# 第三章 HTTP通用首部字段
> 作者:肖鹏 时间:2018-05-06
## 3.0.1 通用首部字段总列表
> 作者:肖鹏 时间:2018-05-06
| 首部字段名 | 说明
| ---|--- |
| [Cache-Control](general.md) | 控制缓存的行为 |
| [Connection](connection.md) | 逐跳首部、连接的管理 |
| [Date](date.md) | 创建报文的日期时间 |
| [Pragma](pargma.md) | 报文指令 |
| [Trailer](trailer.md) | 报文末端的首部一览 |
| [Transfer-Encoding](transfer-encoding.md) | 指定报文主体的传输编码方式 |
| [Upgrade](upgrade.md) | 升级为其他协议 |
| [Via](via.md) | 代理服务器的相关信息 |
| [Warning](warning.md) | 错误通知 |
## 3.0.2 相关信息
> 首部字段:包含请求和响应的各种条件和属性的各类首部,一般有4种首部,分别是:通用首部、请求首部、响应首部和实体首部
> ==Ps: **若HTTP首部字段重复了会如何**==
>
> 当HTTP报文首部中出现了两个或两个以上具有相同首部字段名时会怎么样?这种情况在规范内尚未明确,根据游览器内容处理逻辑的不同,结果可能不一样。有些游览器会优先处理第一次出现的首部字段,而有些则会优先处理最后出现的首部字段。==所以,在平时书写首部字段时注意不要重复==
> Ps:以下都为HTTP/1.1使用的首部字段,当然有一些是不属于RFC2616的,但是被我们经常使用的,比如:Cookie、Set-Cookie和Content-Disposition等在其他RFC中定义的首部字段
> Ps:HTTP首部字段将定义成缓存代理和非缓存代理的行为,分为2种类型
>
> 1、端到端首部(End-to-end Header):分在此类别中的首部会转发给请求/响应对应的最终接受目标,且必须保存在由缓存生成的响应中,另外规定它必须被转发
>
> 2、逐跳首部(Hop-by-hop Header):分在此类别中的首部只对单次转发有效,会因通过缓存或代理而不在转发。HTTP/1.1 和之后版本中,如果要使用hop-by-hop 首部,需提供Connection首部字段。
>
> 逐跳首部一般为下面8个,其余的为端到端首部:**Connection、Keep-Alive、Proxy-Authenticate、Proxy-Authorization、Trailer、TE、Transfer-Encoding、Upgrade**
- Tips:
1. 接下来内容将全部围绕字段展开
2. 有些专业术语,比如网关等等,将在后面讲解
3. 因为语言种类多,所以讲不演示如何使用这些字段,只讲解字段意思和基本信息,如要测试请按照你所使用的语言来进行处理
> 作者:肖鹏 时间:2018-05-06
- 首语
- 第一章 HTTP协议及网络基础
- 第二章 协议返回状态码
- 第三章 HTTP通用首部字段
- 第一节 Cache-Control字段
- 第二节 Connection 字段
- 第三节 Date 字段
- 第四节 Pragma 字段
- 第五节 Trailer 字段
- 第六节 Transfer-Encoding 字段
- 第七节 Upgrade 字段
- 第八节 Via 字段
- 第九节 Warning 字段
- 第四章 HTTP请求首部字段
- 第一节 Accept 字段
- 第二节 Accept-Charset 字段
- 第三节 Accept-Encoding 字段
- 第四节 Accept-Language 字段
- 第五节 Authorization 字段
- 第六节 Expect 字段
- 第七节 From 字段
- 第八节 Host 字段
- 第九节 If-Match 字段
- 第十节 If-Modified-Since 字段
- 第十一节 If-None-Match 字段
- 第十二节 If-Range 字段
- 第十三节 If-Unmodified-Since 字段
- 第十四节 Max-Forwards 字段
- 第十五节 Proxy-Authorization 字段
- 第十六节 Range 字段
- 第十七节 Referer 字段
- 第十八节 TE 字段
- 第十九节 User-Agent 字段
- 第五章 HTTP响应首部字段
- 第一节 Accept-Ranges 字段
- 第二节 Age 字段
- 第三节 ETge 字段
- 第四节 Location 字段
- 第五节 Proxy-Authenticate 字段
- 第六节 Retry-After 字段
- 第七节 Server 字段
- 第八节 Vary 字段
- 第九节 WWW-Authenticate 字段
- 第六章 HTTP实体首部字段
- 第一节 Allow 字段
- 第二节 Content-Encoding字段
- 第三节 Content-Language 字段
- 第四节 Content-Length 字段
- 第五节 Content-Location 字段
- 第六节 Content-MD5 字段
- 第七节 Content-Range 字段
- 第八节 Content-Type 字段
- 第九节 Expires 字段
- 第十节 Last-Modified 字段
- 第七章 Cookie相关和其他的首部字段