您当前的位置:首页 > 计算机 > 服务器 > 网络服务

12.6. HTTP 请求与响应报文格式

时间:12-14来源:作者:点击数:
城东书院 www.cdsy.xyz

请求报文包含三部分:

  • 请求行:包含请求方法、URI、HTTP 版本信息
  • 请求首部字段
  • 请求内容实体

响应报文包含三部分:

  • 状态行:包含 HTTP 版本、状态码、状态码的原因短语
  • 响应首部字段
  • 响应内容实体

HTTP请求报文格式:

<Method> <Request-URI> <HTTP-Version>
<headers>

<entity-body>

其中:

  • Method:请求方法,如 GET、POST、PUT等。
  • Request-URI:请求的资源标识符,可以是绝对 URL、相对 URL 或者一个通配符*。
  • HTTP-Version:HTTP 协议的版本号,如 HTTP/1.1。
  • headers:请求头,包含多个键值对,每一对键值之间用冒号(:)分隔。
  • entity-body:请求体,可以为空,通常用于 POST 请求时传递实体内容。

示例:

GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1

HTTP响应报文格式:

<HTTP-Version> <Status-Code> <Reason-Phrase>
<headers>

<entity-body>

其中:

  • HTTP-Version:HTTP 协议的版本号,如 HTTP/1.1。
  • Status-Code:HTTP 响应状态码,例如 200、404 等。
  • Reason-Phrase:响应状态码的描述信息,例如 OK、Not Found 等。
  • headers:响应头,包含多个键值对,每一对键值之间用冒号(:)分隔。
  • entity-body:响应体,可以为空,通常用于传递实体内容。

示例:

HTTP/1.1 200 OK
Date: Wed, 21 Oct 2015 07:28:00 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 35739
Last-Modified: Mon, 19 Oct 2015 12:48:36 GMT
Connection: keep-alive
ETag: "5625f0d0-8b23"
Access-Control-Allow-Origin: *
Cache-Control: max-age=86400
Expires: Thu, 22 Oct 2015 07:28:00 GMT

<!doctype html>
<html>
<head>
    <title>Example Domain</title>
    ... ...
</body>
</html>
城东书院 www.cdsy.xyz
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐