对于前端开发而言,比较重要的请求头和响应头字段包括:
请求头(Request Headers):
- Content-Type: 指定请求发送的数据类型,常见取值包括
application/json
、application/x-www-form-urlencoded
、multipart/form-data
等。 - Authorization: 包含用户验证凭证,用于向服务器发送身份验证信息。
- Cookie: 在请求头中包含客户端的 Cookie 信息,用于在多个请求之间保持会话状态。
- User-Agent: 包含了用户代理信息,可以用于识别客户端的浏览器或设备类型。
- Accept: 指定客户端能够接受的响应内容类型。
响应头(Response Headers):
- Content-Type: 指定响应返回的数据类型,告诉客户端如何解析响应数据。
- Cache-Control: 控制缓存的行为,例如是否允许客户端缓存响应,缓存的有效期等。
- Set-Cookie: 用于在响应中设置新的 Cookie,用于在客户端存储会话信息等。
- Access-Control-Allow-Origin: 用于跨域请求,指示哪些域名允许访问资源。
- Location: 重定向或跳转时,告诉客户端新资源的 URL 地址。
以上是一些前端开发中经常用到的重要的请求头和响应头字段,它们对于实现各种功能和保持通讯安全性都起着关键作用。举例如下:
请求头(Request Headers):
-
Content-Type:
- 示例:
Content-Type: application/json
- 说明:告诉服务器发送的数据是 JSON 格式。
- 示例:
-
Authorization:
- 示例:
Authorization: Bearer <token>
- 说明:发送身份验证凭证,通常用于访问受保护资源。
- 示例:
-
Cookie:
- 示例:
Cookie: session_id=abc123
- 说明:在请求中包含客户端的会话信息,以维持用户的登录状态。
- 示例:
-
User-Agent:
- 示例:
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.190 Safari/537.36
- 说明:包含了客户端浏览器或设备的相关信息。
- 示例:
-
Accept:
- 示例:
Accept: application/json
- 说明:告诉服务器客户端接受的响应内容类型为 JSON 格式。
- 示例:
响应头(Response Headers):
-
Content-Type:
- 示例:
Content-Type: application/json; charset=utf-8
- 说明:告诉客户端响应返回的数据是 JSON 格式,并使用 UTF-8 编码。
- 示例:
-
Cache-Control:
- 示例:
Cache-Control: max-age=3600, public
- 说明:指示客户端可以缓存该响应,最长缓存时间为 3600 秒。
- 示例:
-
Set-Cookie:
- 示例:
Set-Cookie: session_id=xyz789; Path=/; Expires=Wed, 01 Mar 2024 07:22:03 GMT; Secure; HttpOnly
- 说明:在客户端设置新的 Cookie,用于在客户端存储会话信息。
- 示例:
-
Access-Control-Allow-Origin:
- 示例:
Access-Control-Allow-Origin: https://www.example.com
- 说明:允许 https://www.example.com 域名访问该资源。
- 示例:
-
Location:
- 示例:
Location: https://www.example.com/newpage
- 说明:重定向客户端至 https://www.example.com/newpage 地址。
- 示例:
以上是一些请求头和响应头字段的示例及其说明,这些字段在前端开发中经常用到,对于实现各种功能和保持通讯安全性至关重要。
上面这些字段中,我们可以看出,cookie不仅前端可以操控,后端也可以通过响应头来操作cookie。
而其中的Authorization字段通常用来做身份校验。它可能包含很多种验证信息,最长用的就是Bearer Token 认证。