web请求和响应
我帮你分成**请求(Request)和响应(Response)两大块讲,分别解释头(Header)和体(Body)**各自规定的东西。
1. 请求(Request)
当客户端(比如浏览器、App)向服务器发起请求时,会有请求头和请求体:
请求头(Request Headers)
规定请求的元信息,告诉服务器:
请求方式(GET、POST、PUT、DELETE…)
内容类型(
Content-Type
)
例:application/json
表示请求体是 JSON 数据。客户端信息(
User-Agent
)
例:浏览器型号、系统版本等。身份验证(
Authorization
)
例:JWT token、Basic Auth。编码方式(
Accept-Encoding
)
例:gzip、deflate。可接受的数据类型(
Accept
)
例:application/json
、text/html
。其他协议要求(比如跨域时的
Origin
、Referer
等)
总结:请求头就是告诉服务器“我是谁、我想要什么格式的数据、我会发什么格式的数据、我有哪些权限”。
请求体(Request Body)
规定要发送给服务器的实际数据(不是元信息)。
GET 请求一般没有请求体(数据放在 URL 参数里)。
POST / PUT / PATCH 请求会有请求体,比如:
JSON:
{"name": "Tom", "age": 18}
表单:
name=Tom&age=18
文件:二进制文件流(图片、视频…)
总结:请求体是“我要发给你的具体内容”。
2. 响应(Response)
当服务器处理完请求,会返回响应头和响应体:
响应头(Response Headers)
规定响应的元信息,告诉客户端:
状态码(
200 OK
,404 Not Found
,500 Internal Server Error
)返回数据类型(
Content-Type
)
例:application/json; charset=utf-8
。返回数据大小(
Content-Length
)缓存策略(
Cache-Control
、Expires
)跨域许可(
Access-Control-Allow-Origin
)压缩方式(
Content-Encoding
)Cookie 设置(
Set-Cookie
)
总结:响应头告诉客户端“我给你的是啥格式、能不能缓存、是否允许跨域、cookie 怎么设置”。
响应体(Response Body)
规定服务器返回的实际数据:
HTML 页面
JSON 数据
例:{"status": "success", "data": {...}}
文件(图片、视频、压缩包…)
纯文本
总结:响应体就是“我给你的具体内容”。
✅ 一句话记忆
头(Header) = 规则 & 元信息
体(Body) = 实际数据内容
如果你愿意,我可以帮你画一张请求/响应结构对照图,一看就能记住两者的区别和作用。
你要我画吗?