基本请求格式

在 HTTP 1.1 中,最小 HTTP 请求包含请求行和 Host 标头:

GET /search HTTP/1.1 \r\n
Host: google.com \r\n
\r\n

第一行有这种格式:

Method Request-URI HTTP-Version CRLF

Method 应该是一个有效的 HTTP 方法; 之一 [1] [2]

  • OPTIONS
  • GET
  • HEAD
  • POST
  • PUT
  • DELETE
  • PATCH
  • TRACE
  • CONNECT

Request-URI 表示 URI 或客户端请求的资源的路径。它可以是:

  • 完全限定的 URI,包括 scheme,host,(可选)端口和路径; 要么
  • 路径,在这种情况下,必须在 Host 标头中指定主机

HTTP-Version 表示客户端正在使用的 HTTP 协议的版本。对于 HTTP 1.1 请求,这必须始终为 HTTP/1.1

请求行以回车换行符对结束,通常由\r\n 表示。