通用首部(请求/响应):
提供最基本的信息,请求报文和响应报文都可能包含这些信息。
Connection 指定HTTP持久连接的选项。Connection:keep-alive , 开启HTTP持久连接,HTTP 1.1默认值;Connection:close , 关闭HTTP持久连接,HTTP 1.0默认值。
Date 表示消息发送的时间,缓存在评估响应的新鲜度时要用到,时间的描述格式由RFC822定义。例如,Date: Thu, 11 Jul 2015 15:33:24 GMT。
Transfer-Encoding 用来改变报文格式,它不但不会减少实体内容传输大小,甚至还会使传输变大。最新的 HTTP 规范里,只定义了一种编码传输:分块编(chunked)
在头部加入 Transfer-Encoding: chunked 之后,就代表这个报文采用了分块编码。这时,报文中的实体需要改为用一系列分块来传输。每个分块包含十六进制的长度值和数据,长度值独占一行,长度不包括它结尾的 CRLF(\r\n),也不包括分块数据结尾的 CRLF。最后一个分块长度值必须为0,对应的分块数据为空,表示实体结束。
HTTP协议中使用Content-Length这个头来告知数据的长度。然而,在数据下行(服务器到客户端)的过程中,Content-Length的方式要预先在服务器中缓存所有数据,然后所有数据再一股脑儿地发给客户端。
如果要一边产生数据,一边发给客户端,WEB 服务器就需要使用"Transfer-Encoding: chunked"这样的方式来代替Content-Length。
Trailer 采用分块传输编码方式时,用于列出报文拖挂部分的首部集合。
MIME-Version 给出发送端使用的MIME版本。
Via 显示报文经过的中间节点 代理、网关。
Update 给出发送端可能想要“升级”使用的新版本协议
Cache-Control (随报文传送缓存指示)
缓存请求指令:客户端可以在HTTP请求中使用的标准 Cache-Control 指令。
Cache-Control: max-age=
Cache-Control: max-stale[=]
Cache-Control: min-fresh=
Cache-control: no-cache
Cache-control: no-store
Cache-control: no-transform
Cache-control: only-if-cached
缓存响应指令:服务器可以在响应中使用的标准 Cache-Control 指令。
Cache-control: must-revalidate
Cache-control: no-cache
Cache-control: no-store
Cache-control: no-transform
Cache-control: public
Cache-control: private
Cache-control: proxy-revalidate
Cache-Control: max-age=
Cache-control: s-maxage=
实体首部(请求/响应):
描述HTTP报文的负荷,请求报文和响应报文都可能包含这些信息。
Allow 可以对此实体执行的请求方法
Location 告知客户端实体处于何处,用于将客户端定向到资源的URL上。
Expires 过期时间,该时间后实体不再有效。
Last-Modified 该实体最后一次被修改的日期和时间。
ETag 实体标记 某个特定资源版本的标识符
Content-Type 该主题对象的类型。如 text/html,text/xml,image/jpeg,video/mpeg4,video/mpg,application/pdf,application/vnd.android.package-archive,application/octet-stream(二进制流)。
Content-Length 主体的尺寸。
Content-Location 资源所处的位置。
Content-Language 理解主体最宜的语言。
Content-Encoding 通常用于对实体内容进行压缩编码,目的是优化传输,例如用 gzip 压缩文本文件,能大幅减小体积。jpg / png 这类文件一般不开启,因为图片格式已经是高度压缩过的。
Content-MD5 主体的MD5校验和。
Content-Range 在整个资源中,此实体表示的字节范围。
Content-Base 解析资源中相对URL时使用的基础URL。
请求头:
Client-IP、Host、Referer、User-Agent、UA-Color/UA-CPU/UA-Pixels/UA-OS
Accept、Accept-Charset、Accept-Encoding、Accept-Languge
请求首部 fiddler抓取的请求头响应头:
Age、Retry-After、Server、Warning Accept-Ranges、Vary、Proxy-Authenticate、Set-Cookie、Set-Cookie2、WWW-Authenticate
响应首部 fiddler抓取的响应头
网友评论