HTTP报文格式 | 青训营笔记

104 阅读1分钟

HTTP是在Web中用于传输数据的协议。HTTP报文由两个部分组成:请求报文和响应报文。

1. 请求报文:

请求报文由客户端发送给服务器。它包含以下几个主要部分:

  • 请求行:包含请求方法(例如GETPOSTPUT等)、请求的URL以及HTTP协议版本。
  • 请求头部:包含一系列的键值对,用于传递与请求相关的附加信息,如请求的主机、内容类型、认证信息等。
  • 空行:一个空行用于分隔请求头部和请求体。
  • 请求体:可选部分,用于在POST请求中传递实际的数据内容。

以下是一个示例请求报文:

GET /hello.html HTTP/1.1
Host: www.hello.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.101 Safari/537.36
Accept: text/html,application/xhtml+xml

2. 响应报文:

响应报文由服务器发送给客户端。它包含以下几个主要部分:

  • 状态行:包含响应的状态码和对应的状态信息。
  • 响应头部:类似于请求头部,包含一系列键值对,提供响应相关的附加信息,如服务器类型、内容长度、日期等。
  • 空行:一个空行用于分隔响应头部和响应体。
  • 响应体:实际的响应数据,可以是HTML文档、图片、JSON数据等。

以下是一个示例响应报文:

HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 1274
<!DOCTYPE html>
<html>
...
</html>