Appearance
请求解析
- 是指对客户端发送的请求进行解析,提取出请求的方法、URL、协议版本、请求头和请求体等信息。
HTTP 协议
- 协议说明:超文本传输协议,默认端口为 80
- 传递报文:明文模式
HTTPS 协议
- 协议说明:http+ssl(安全套接层),默认端口 443。比 http 协议更加安全。
- 传递报文:加密模式
请求头
客户端向服务发送请求所携带的参数
Content-Type:用来说明请求或响应中的实体数据的格式,告诉服务器如何解析数据。例如,Content-Type: application/json 表示以 JSON 格式传输数据,常用于前后端通信的 API 接口。Accept:告知服务器客户端希望接收的数据格式。如 Accept: application/json 表示期望返回 JSON 格式数据。Authorization:Authorization:用于认证,携带访问令牌或账号信息,表明客户端有权限访问资源。常见的值有Bearer <token>(JWT 或 OAuth 授权)和Basic <base64(username:password)>(基础认证)。User-Agent:标识客户端的类型和操作系统信息,服务器可据此做兼容性处理。Referer:告知服务器当前请求是从哪个页面跳转过来的,常用于防盗链或统计来源。Cookie:Cookie:携带客户端的 Cookie 信息,保持用户会话状态。Accept-Language:指定客户端希望接收的语言,用于国际化。如Accept-Language:zh-CN,zh;q=0.9,en;q=0.8表示优先接收中文,其次是英文。Host:指定目标服务器的域名,在虚拟主机环境中用于区分不同服务。Cors:标识请求的来源域名,用于 CORS 跨域资源共享验证。
响应头
服务器向客户端返回的信息
Date:响应的日期时间,格式为Day, DD Mon YYYY HH:mm:ss GMT。Server:服务器的软件信息,用于标识服务器类型。例如:nginx/1.18.0、Apache/2.4.46、IIS/10.0等。Content-Type:响应体的 MIME 类型和编码格式,是解析响应体的关键,常用值为text/html、application/json、image/jpeg等。Content-Encoding:响应体的压缩算法,客户端需先解压才能解析,常用值为gzip、deflate、br等。Cache-Control:指定响应的缓存控制,常用值为no-cache、no-store、max-age等。Expires:指定响应的过期时间,格式为Day, DD Mon YYYY HH:mm:ss GMT。ETag:资源的唯一标识(如哈希值),用于验证资源是否修改。Access-Control-Allow-Origin: 允许的来源域名,用于 CORS 跨域资源共享验证。Set-Cookie:服务器向客户端设置 Cookie,包含键值、过期时间、域名等信息
状态码
1xx(信息性状态码):请求已接收,继续处理
- 100 Continue:服务器已接收请求头,客户端可继续发送请求体(常用于 POST 大数据时的确认)。
- 101 Switching Protocols:服务器同意客户端的协议切换请求(如从 HTTP 切换到 WebSocket)。- 102 Processing:服务器正在处理请求,但尚未完成(常用于异步处理场景)。
2xx(成功状态码):请求已成功处理
- 200:请求成功
3xx(重定向状态码):请求需要进一步处理
- 301:永久重定向
- 302:临时重定向
4xx(客户端错误状态码):请求包含错误语法或无法完成请求
- 400:请求错误
- 401:未授权
- 403:禁止访问
- 404:未找到
5xx(服务器错误状态码):服务器处理请求出错
- 500:服务器错误
- 501:未实现
- 502:网关错误
- 503:服务不可用
- 504:网关超时
- 505:HTTP 版本不支持
