1. Accept
- 作用:告知服务器客户端支持的响应数据格式(如 JSON、XML、HTML)。
- 示例:
Accept: application/json
(优先接收 JSON 格式数据)。
2. Content-Type
- 作用:说明请求体的数据格式(仅当请求包含 Body 时存在)。
- 常见值:
application/json
:请求体为 JSON 格式(如 POST/PUT 请求)。application/x-www-form-urlencoded
:请求体为 URL 编码的表单数据(传统表单提交)。multipart/form-data
:用于上传文件或复杂表单(包含二进制数据)。
3. User-Agent(UA)
- 作用:标识客户端的身份(如浏览器类型、操作系统、设备型号)。
- 示例:
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36
。
4. Authorization
- 作用:用于身份验证(如令牌、Cookie 等)。
- 常见格式:
Bearer <token>
:Bearer 令牌认证(如 JWT)。Basic <base64编码的用户名:密码>
:基础认证(较少使用,安全性较低)。
5. Cookie
- 作用:携带服务器之前返回的 Cookie 信息(用于保持会话状态)。
- 示例:
Cookie: session_id=abc123; user_lang=en
。
6. Host
- 作用:指定请求的目标服务器域名或 IP 地址(必填项,HTTP/1.1 规范要求)。
- 示例:
Host: api.example.com
。
7. Referer
- 作用:标识请求的来源页面(用于跟踪用户访问路径)。
- 示例:
Referer: https://example.com/search
(从搜索页发起请求)。
8. Cache-Control
- 作用:控制缓存策略(如是否允许缓存、缓存有效期)。
- 常见值:
no-cache
:强制重新验证缓存。max-age=3600
:允许缓存,有效期 3600 秒。
9. Accept-Language
- 作用:告知服务器客户端偏好的语言(如
zh-CN
表示中文简体)。 - 示例:
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
(优先级从高到低)。
10. Connection
- 作用:指定连接是否保持(HTTP/1.1 默认值为
keep-alive
,保持长连接)。 - 常见值:
keep-alive
(保持连接)、close
(请求完成后关闭连接)。
总结
- 接口(方法):GET(查)、POST(增)、PUT(全量改)、DELETE(删)是 RESTful API 中最核心的四大方法。
- 请求头:
Content-Type
和Authorization
是处理数据格式和认证的关键参数,User-Agent
和Referer
常用于统计和安全场景。