HTTP - Message Format
Created by : Mr Dk.
2018 / 11 / 08 09:36
Nanjing, Jiangsu, China
Concept
- 请求报文 (request message) - Web 客户端 → Web 服务器
- 应答报文 (response message) - Web 服务器 → Web 客户端
Structure of message
- 请求报文
- 请求行(request line)
- 方法(method) -
GET、POST、... - URL
- HTTP version
- 方法(method) -
- 报头(header)
- 空白行(blank line) - 报头部分的结束标志
- 正文(body) - 可空
- 请求行(request line)
- 应答报文
- 状态行(status line)
- HTTP version
- 状态码 -
404、200、... - 状态短语
- 报头(header)
- 空白行(blank line)
- 正文(body)
- 状态行(status line)
Structure of header
四种类型:
- 通用头部
- 请求头部
- 应答头部
- 正文头部
其中,请求报文中只含有:
- 通用头部
- 请求头部
- 正文头部
应答报文中只含有:
- 通用头部
- 应答头部
- 正文头部
通用头部
给出关于报文的通用信息。
| 字段 | 说明 |
|---|---|
| Cache-control | 高速缓存信息 |
| Connection | 连接是否应该关闭 |
| Date | 当前日期 |
| MIME-version | MIME 版本 |
| Upgrade | 优先使用的通信协议 |
请求头部
只会在 请求报文 中出现,指明客户端配置与客户优先使用的文档格式:
| 字段 | 说明 |
|---|---|
| Accept | 客户端能够接受的数据格式 |
| Accept-charset | 客户端能够处理的字符集 |
| Accept-encoding | 客户端能够处理的编码方案 |
| Accept-language | 客户端能够接受的语言 |
| Authorization | 客户端具有何种授权 |
| From | 客户端的电子邮件地址 |
| Host | 客户端的主机和端口号 |
| If-modified-since | 只在比指定日期更新时才发送这个文档 |
| If-match | 只在与指定标记匹配时才发送这个文档 |
| If-not-match | 只在与指定标记不匹配时才发送这个文档 |
| If-range | 只发送缺少的那部分文档 |
| If-unmodified-since | 如果在指定日期之后还未改变则发送文档 |
| Referrer | 被链接文档的 URL |
| User-agent | 客户程序 |
应答头部
只出现在 应答报文 中,指明服务器的配置与关于请求的特殊信息:
| 字段 | 说明 |
|---|---|
| Accept-range | 服务器接收客户端请求的范围 |
| Age | 文档的使用期限 |
| Public | 可以支持的方法清单 |
| Retry-after | 指明的日期之后,服务器才能够使用 |
| Server | 服务器名与版本号 |
正文头部
说明关于文档正文的信息。
| 字段 | 说明 |
|---|---|
| Allow | URL 可使用的合法方法 |
| Content-encoding | 编码方案 |
| Content-language | 语言 |
| Content-length | 文档长度 |
| Content-range | 文档范围 |
| Content-type | 数据类型 |
| Etag | 正文标记 |
| Expires | 内容可能改变的时间与日期 |
| Last-modified | 上次内容改变的时间与日期 |
| Location | 被创建和被移动的文档位置 |