Http Header的用途在于携带HTTP Request和HTTP Response的元数据信息的Name:Value数据(Name不区分大小写,通常都采用首字母大写,-分隔的写法,比如Content-Type)。按其用途可以分为如下4类:
- 通用类:描述请求和响应的。
- 请求类:描述请求的。
- 响应类:描述响应的。
- 表述类:描述请求和响应的
Body部分的。
HTTP APIs中常用到的Headers:
| Header | 描述说明 | 示例 |
|---|---|---|
| Accept | 客户端期望服务器返回的数据格式。 | Accept:application/json |
| Accept-Charset | 客户端期望服务器返回的数据的字符集。 | Accept-Charset:utf-8 |
| Content-Type | 描述Body的数据类型。 |
Content-Type:application/json |
| Content-Encoding | 描述Body的编码方式。 |
Content-Encoding: gzip |
| Content-Length | 描述Body的长度。 |
Content-Length: 1234 |
| Location | Response中提供给客户端的连接 |
Location: /user/1 |
HTTP Request:
POST /xxx HTTP/1.1
Accept: application/json;
Accept-Charset: utf-8
Content-Type: application/json;charset=utf-8
{
"x":1,
"y":2
}HTTP Response:
HTTP/1.1 201 Created
Content-Type: application/json;charset=utf-8
Content-Encoding: gzip
Location: /xxx/1
Request-Id: {id}
Request-Id可以由Http Request传入,也可以由服务端生成,追加此信息到log中,便于服务端追踪请求。
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers