HTTP 头部本质上是一个传递额外重要信息的键值对。主要分为:通用头部,请求头部,响应头部和实体头部。

通用头部

协议头说明举例
Cache-Control用来指定当前的请求/回复中是否使用缓存机制Cache-Control: no-store
Connection客户端(浏览器)想要优先使用的连接类型Connection: keep-alive (Upgrade)
Date报文创建时间Date: Dec, 26 Dec 2015 17: 30: 00 GMT
Trailer会实现说明在报文主体后记录哪些首部字段,该首部字段可以使用在 HTTP/1.1 版本分块传输编码时Trailer: Expiress
Transfer-Encoding用来改变报文格式Transfer-Encoding: chunked
Upgrade
要求服务器升级到一个高版本协议
Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11
Via告诉服务器,这个请求是由哪些代理发出的
Warning一个一般性的警告,表示在实体内容中可能存在错误
协议头
说明
举例
Accept告诉服务器自己允许哪些媒体类型Accept: text/plain
Accept-Charset浏览器申明可接受的字符集Accept-Charset: utf-8
Accept-Encoding浏览器申明自己接收的编码方法Accept-Encoding: gzip, deflate
Accept-Language
浏览器可接受的响应内容语言列表

Accept-Language: en-US
Authorization用于表示 HTTP 协议中需要认证资源的认证信息
Expect表示客户端要求服务器做出特定的行为Expect: 100-continue
From发起此请求的用户的邮件地址
Host表示服务器的域名以及服务器所监听的端口号
If-XXX条件请求If-Modified-Since: Dec, 26 Dec 2015 17:30:00 GMT
Max-Forwards限制该消息可被代理及网关转发的次数Max-Forwards: 10
Range表示请求某个实体的一部分,字节偏移以 0 开始Range: bytes=500-999
Referer表示浏览器所访问的前一个页面,可以认为是之前访问页面的链接将浏览器带到了当前页面Referer: http://www.ccagml.com
User-Agent浏览器的身份标识字符串User-Agent: Mozilla….

响应头部

协议头说明
Accept-Ranges字段的值表示可用于定义范围的单位Accept-Ranges: bytes
Age创建响应的时间Age:5744337
ETag
唯一标识分配的资源
Etag:W/”585cd998-7c0f”
Location表示重定向后的 URL
Retry-After告知客户端多久后再发送请求
Server告知客户端服务器信息
Vary缓存控制

实体头部

协议头说明
Allow对某网络资源的有效的请求行为,不允许则返回405Allow: GET, HEAD
Content-encoding返回内容的编码方式Content-Encoding: gzip
Content-Length返回内容的字节长度
Content-Language响应体的语言
Content-Location请求资源可替代的备用的另一地址
Content-MD5返回资源的MD5校验值
Content-Range在整个返回体中本部分的字节位置
Content-Type
返回内容的MIME类型
Expires响应过期的日期和时间
Last-Modified请求资源的最后修改时间

作者:力扣 (LeetCode)
链接:https://leetcode-cn.com/leetbook/read/networks-interview-highlights/egdli7/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

发表评论