一.http的核心组成部分(都分成请求的和响应的)
1.起始行:请求------------------------
-
方法(Method):
GET
、POST
、PUT
、DELETE
等。 -
请求目标(Request Target):URL 路径和查询字符串(如
/path?query=1
)。 -
协议版本:
HTTP/1.1
或HTTP/1.2
响应————————————
-
协议版本:
HTTP/1.1
。 -
状态码(Status Code):
200
(成功)、404
(未找到)等。 -
状态文本:
OK
、Not Found
等。
2.头部
-
常见请求头:
-
Host
:目标域名。 -
Content-Type
:请求体的数据类型(如application/json
)。 -
Authorization
:认证信息(如Bearer token
)。
-
-
常见响应头:
-
Content-Length
:响应体的长度。 -
Set-Cookie
:设置客户端 Cookie。
-
3.空行
-
作用:分隔头部和消息体,仅包含
\r\n
。例子如下http
-
Headers...
-
\r\n
-
Body...
4.消息体(Body)
总结:请求:方法 + URL + 头部 + 空行 + 消息体
响应:协议版本 + 状态码 + 头部 + 空行 + 消息体
个人知识补充
其中URL统一资源定位符,也就是平常说的网址,我们在接受读取参数前要对其进行编码和解码,因为为其没有中文字符,如果直接读取会导致读取错误