1、Cache-control
2、Connection
Connection有两个作用。
1、控制不再转发给代理服务器的字段
在客户端发送请求和服务端返回的响应中加入Connection字段可以控制不再转发给代理服务器的字段(即逐跳头部字段)
GET /index.html HTTP/1.1
Upgrade : HTTP/1.1
Connection : Upgrade
转发给代理服务器时会将Connection提及的字段删除掉。由于Connection头部字段可以防止对本地字段的无意转发,因此将逐跳头部字段放入Connection字段中可以称为”对头部的保护”。
转发:GET /index.html HTTP/1.1
2、管理持久连接
- HTTP/1.1 之前的版本都是非持久连接。为此要在HTTP/1.1 之前维持持久连接必须指定
Connection
字段值为Keep-Alive
- HTTP/1.1 版本默认为持久连接,当一方想要主动断开持久连接时会指定
Connection
的值为close
Connection : close
3、Date
表示创建HTTP报文的日期。
4、Pragma
Pragma
是为了兼容HTTP/1.1之前的HTTP版本而定义。
此字段为通用字段,但只用于客户端发送的请求中。
5、Trailer
该字段会表明报文主体中记录了哪些头部字段。
6、Transfer-Encoding
指定传输报文主体时采用的编码方式。
7、Upgrade
此字段用于检测HTTP协议和其他协议是否可使用更高版本通信。另因为此字段属于逐跳字段所以需要额外指定
Connection : Upgrade
8、Via
- 此字段可以追踪客户端与服务端之间的请求和响应报文的传输路径。
- 此字段不仅为了追踪报文的传输路径,还可以避免请求回环的发生。
9、Warning
HTTP/1.1 Warning
是从 HTTP/1.0 Retry-After
演变而来的。通常会告知用户一些关于缓存的警告。
Warning
格式:
Warning : [警告码] [警告主机:端口号] “[警告内容]” [日期时间]
警告码
警告码 | 警告内容 | 说明 | ||||||||
110 | Response is stale (响应已过期) | 代理返回已经过期的资源 | ||||||||
111 | Revalidation failed (再验证失败) | 代理再验证资源有效性时失败(服务器无法到达等原因) | ||||||||
112 | Disconnection operation (断开连接操作) | 代理与互联网连接被故意切断 | ||||||||
113 | Heuristic expiration (试探性过期) | 响应的使用期超过24小时(有效缓存的设定时间大于24小时) | ||||||||
199 | Miscellaneous warning (杂项警告) | 任意的警告内容 | ||||||||
214 | Transformation applied (使用了转换) | 代理对内容编码或媒体类型等执行了某些处理时 | ||||||||
299 | Miscellaneous persistent warning (持久杂项警告) | 任意的警告内容 |