请求消息:

请求行(request line)、请求头部(header)和请求体(Request Body) 组成。
image.png
①,②和③属于请求行;④属于请求头;⑤属于报文体

  • 是请求方法。
  • 为请求对应的URL地址,它和报文头的Host属性组成完整的请求URL。
  • 是协议名称及版本号。
  • 是HTTP的报文头,报文头包含若干个属性,格式为“属性名:属性值”,服务端据此获取客户端的信息。
  • 是报文体,它将一个页面表单中的组件值通过param1=value1&param2=value2的键值对形式编码成一个格式化串,它承载多个请求参数的数据。不但报文体可以传递请求参数,请求URL也可以通过类似于“/chapter15/user.html? param1=value1&param2=value2”的方式传递请求参数。

消息 - 图2

  1. GET /hello.txt HTTP/1.1
  2. User-Agent: curl/7.16.3 libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
  3. Host: www.example.com
  4. Accept-Language: en, mi

响应消息:

状态行、消息报头、空行和响应正文。
image.png

  • 报文协议及版本;
  • 状态码及状态描述;
  • 响应报文头,也是由多个属性组成;
  • 响应报文体。
    1. HTTP/1.1 200 OK
    2. Date: Mon, 27 Jul 2009 12:28:53 GMT
    3. Server: Apache
    4. Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT
    5. ETag: "34aa387-d-1568eb00"
    6. Accept-Ranges: bytes
    7. Content-Length: 51
    8. Vary: Accept-Encoding
    9. Content-Type: text/plain

https://blog.csdn.net/weixin_43899069/article/details/121137345