一、内容协商

1、Accept:希望服务器返回的数据格式,如下面的:text/javascript, application/javascript, application/ecmascript, application/x-ecmascript

q=0.01表示优先级,参数越高表示浏览器对这种数据格式越支持,没有带q值默认q=1

Accept: text/javascript, application/javascript, application/ecmascript, application/x-ecmascript, */*; q=0.01

2、Accept-Charset:希望服务器返回的字符集,q值同上,备注:utf-8;q=0.7为一组,表示utf-8的优先级为0.7

Accept-Charset: ISO--,gb2312,utf-;q=0.7,*;q=0.3

3、Accept-Language:希望服务器返回的语言

Accept-Language: zh-CN,zh;q=0.9

4、Accept-Encoding:希望服务器返回的压缩格式

Accept-Encoding: gzip, deflate, br

二、缓存控制

1、If-None-Match:服务器使用md5等哈希函数对内容进行计算得出摘要返回给浏览器,下次浏览器请求服务器时会将该摘要放在If-None-Match带过去,服务器对最新的内容进行哈希计算得出新的摘要和浏览器带过来的摘要进行对比,如果一致,则返回304让浏览器从缓存中获取内容

2、If-Modified-Since:服务器将数据的最新修改时间返回给浏览器,下次浏览器请求服务器时会将该修改时间放在If-Modified-Since中带到服务器中,服务器对比数据最新的修改时间和浏览器带过来的时间,如果一致,则返回304

3、If-Match:服务器使用md5等哈希函数对内容进行计算得出摘要返回给浏览器,下次浏览器请求服务器时会将该摘要放在If-Match带过去,服务器对最新的内容进行哈希计算得出新的摘要和浏览器带过来的摘要进行对比,如果一致,则修改内容,不一致,证明内容已经被其他人修改了,则不能对该内容进行修改

4、If-Unmodified-Since:服务器将数据的最新修改时间返回给浏览器,下次浏览器请求服务器时会将该修改时间放在If-Unmodified-Since中带到服务器中,服务器对比数据最新的修改时间和浏览器带过来的时间,如果一致,则修改内容,不一致,证明内容已经被其他人修改了,则不能对该内容进行修改

5、If-Range

三、其他常用头

1、User-Agent:告诉服务器,浏览器当前的系统及相关信息

User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36

2、Referer:用于请求跟踪,告诉服务器,当前页面是从哪一个页面跳转过来的

Referer: https://www.baidu.com

3、Host:请求是客户端的域名

Host: www.baidu.com

4、Connection: Keep-Alive  浏览器和服务器建立一个长连接,避免多次三次握手和四次挥手造成低效连接

http主要请求头的更多相关文章

  1. js获取HTTP的请求头信息

    以下为js获取HTTP的全部请求头信息: var req = new XMLHttpRequest(); req.open('GET', document.location, false); req. ...

  2. 在AngularJs中怎么设置请求头信息(headers)及不同方法的比较

    在AngularJS中有三种方式可以设置请求头信息: 1.在http服务的在服务端发送请求时,也就是调用http()方法时,在config对象中设置请求头信息:事例如下: $http.post('/s ...

  3. Retrofit2 + OkHttp3设置Http请求头(Headers)方法汇总

    在构建网络层时会遇到一个问题就是要手动配置Http请求的Headers,写入缓存Cookie,自定义的User-Agent等参数,但是对于有几十个接口的网络层,我才不想用注解配置Headers,目前网 ...

  4. selenium.Phantomjs设置浏览器请求头

    from selenium import webdriver from selenium.webdriver.common.desired_capabilities import DesiredCap ...

  5. iOS开发——网络篇——文件下载(NSMutableData、NSFileHandle、NSOutputStream)和上传、压缩和解压(三方框架ZipArchive),请求头和请求体格式,断点续传Range

    一.小文件下载 NSURL *url = [NSURL URLWithString:@"http://120.25.226.186:32812/resources/images/minion ...

  6. AFNetworking请求设置请求头

    NSString *url = @"INPUT URL HERE"; AFHTTPRequestOperationManager *manager = [AFHTTPRequest ...

  7. Servlet请求头response应用简单案例

    Servlet请求头response应用简单案例:访问AServlet重定向到BServlet,5秒后跳到CServlet,并显示图片: AServlet package cn.yzu; import ...

  8. HTTP请求头详解

    http://blog.csdn.net/kfanning/article/details/6062118 HTTP由两部分组成:请求和响应.当你在Web浏览器中输入一个URL时,浏览 器将根据你的要 ...

  9. HTTP协议及其请求头分析

    HTTP协议及其请求头分析 HTTP协议及其请求头分析   众所周知,Internet的基本协议是TCP/IP协议,目前广泛采用的FTP.Archie Gopher等是建立在TCP/IP协议之上的应用 ...

  10. request获取请求头和请求数据

    package cn.itcast.request; import java.io.IOException; import java.io.InputStream; import java.io.Pr ...

随机推荐

  1. Linux 系统管理命令 - mpstat - CPU信息统计

    命令详解 重要星级: ★★★★☆ 功能说明: mpstat 是 Multiprocessor Statistics 的缩写,是一种实时系统监控工具.mpstat 命令会输出 CPU 的一些统计信息,这 ...

  2. [App Store Connect帮助]七、在 App Store 上发行(2.2)设定价格与销售范围:将您的 App 以预订形式发布

    在首次将您的 App 发布至 App Store 前,您可以选择以预订形式提供该 App.在您的 App 发布以供下载之前,顾客可以查看您的产品页并订购您的 App.您的 App 一旦发布,顾客将会收 ...

  3. vue 相关技术文章集锦

    不断更新,如果看到好的文章~~~ 总结篇 vue组件间通信六种方式(完整版) - 原作者:简书-浪里行舟 原理/源码篇 Vue.js 技术揭秘 Vue技术内幕 实战/经验篇 Vue相关开源项目库汇总 ...

  4. linux下的日志压缩脚本

    linux下的日志压缩脚本: #!/bin/bash #第一步:先定义项目列表如下: projects="project-a project-b project-c project-d&qu ...

  5. [Usaco2006 Open]The Climbing Wall 攀岩

    Description One of the most popular attractions at the county fair is the climbing wall. Bessie want ...

  6. 数据结构之splay树

    https://www.bilibili.com/video/av19879546 https://blog.csdn.net/u014634338/article/details/42465089 ...

  7. Java标识符的习惯命名规范

    1 常量标识符:全部用大写字母和下划线表示.如SALES_MAX 2 类名或接口名:标识符用大写字母开头.如CreditCard 3 变量名和方法名:以小写字母开头,单词之间不要有分隔符,第二 及后面 ...

  8. AJPFX讲解java单例模式

    单例设计模式概述:      单例模式就是要确保类在内存中只有一个对象,该实例必须自动创建,并且对外提供单例模式有以下特点: 1.单例类只能有一个实例. 2.单例类必须自己自己创建自己的唯一实例. 3 ...

  9. Docker安装jenkins(六)

    这里是在linux环境下安装docker之后,在doucer内安装jenkins --------------------docker 安装 jenkins---------------------- ...

  10. Nginx反向代理node,实现让静态文件在同一域

    Nginx反向代理node,实现让静态文件在同一域 原文https://github.com/zhuangZhou/Blog/issues/4 不管是Vue还是React,还是传统的网站,与node服 ...