图解HTTP解析6(通用首部)

2019-09-28  本文已影响0人  zdxhxh

一、通用首部字段

通用首部字段是指, 请求报文和响应报文双方都会使用的首部。

1. Cache-Control(★)

指定该字段可以控制缓存的行为。
该指令参数是可选的,多个之间用,隔开,如:
Cache-Control: private, max-age=0, no-cache

1.1 缓存请求指令

1.2 缓存响应指令

2. Connection(★)

2.1 请求

2.2 响应

3. Date

首部字段 Date 表明创建 HTTP 报文的日期和时间。HTTP/1.1 协议使用在 RFC1123中规定的日期时间的格式, Date: Tue, 03 Jul 2012 04:40:59 GMT

4.Pragma

Pragma 是 HTTP/1.1 之前版本的历史遗留字段, 仅作为与 HTTP/1.0的向后兼容而定义。Pragma: no-cache,该首部字段属于通用首部字段,只用于请求报文中,客户端要求所有中间服务器不返回缓存的资源。所有的中间服务器如果都能以 HTTP/1.1 为基准, 那直接采用 CacheControl: no-cache 指定缓存的处理方式是最为理想的。但要整体掌握全部中间服务器使用的 HTTP 协议版本却是不现实的。 因此, 发送的请求会同时含有下面两个首部字段。

Cache-Control: no-cache
Pragma: no-cache

5. Trailer

允许发送方在分块发送的消息后面添加额外的元信息。 该首部字段可应用在 HTTP/1.1 版本分块传输编码时。

6. Transfer-Encoding

首部字段 Transfer-Encoding 规定了传输报文主体时采用的编码方式。HTTP/1.1 的传输编码方式仅对分块传输编码有效。Transfer-Encoding: chunked

7.Upgrade(★)

首部字段 Upgrade 用于检测 HTTP 协议及其他协议是否可使用更高的版本进行通信, 其参数值可以用来指定一个完全不同的通信协议。使用首部字段 Upgrade 时, 还需要额外指定Connection:Upgrade
Upgrade: TLS/1.0。

8.Via

使用首部字段 Via 是为了追踪客户端与服务器之间的请求和响应报文的传输路径。

9. Warning

HTTP/1.1 的 Warning 首部是从 HTTP/1.0 的响应首部(Retry-After) 演变过来的。 该首部通常会告知用户一些与缓存相关的问题的警告。

上一篇下一篇

猜你喜欢

热点阅读