xzhuz / blog-gitment

博客备份和comment记录
https://meisen.pro
0 stars 0 forks source link

图解HTTP之HTTP首部 #19

Open xzhuz opened 6 years ago

xzhuz commented 6 years ago

https://meisen.pro/article/728de016aa2f468cb5f292f8fd02989f

HTTP首部

HTTP协议的请求和响应报文中必定包含HTTP首部。首部内容为客户端和服务端分别处理请求和响应提供了所需要的信息。

HTTP请求报文

下面是请求https://meisen.pro时,请求报文的首部信息。

GET / HTTP/1.1
accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
accept-encoding: gzip, deflate, br
accept-language: zh-CN,zh;q=0.9,en;q=0.8
cache-control: no-cache
pragma: no-cache
upgrade-insecure-requests: 1
user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36

HTTP响应报文

下面是请求http://meisen.pro时,返回的响应报文的首部信息。

HTTP/1.1 200 OK
content-encoding: gzip
content-type: text/html
date: Tue, 11 Sep 2018 12:52:15 GMT
etag: W/"5b969eff-275"
last-modified: Mon, 10 Sep 2018 16:42:39 GMT
server: nginx/1.12.2
status: 200
x-frame-options: SAMEORIGIN

HTTP首部字段

HTTP首部字段是由首部字段名和字段值构成的,中间用冒号':'分隔。

首部字段名: 字段值

HTTP首部字段类型

  1. 通用首部字段 (Genereal Header Fields)

请求报文和响应报文都会使用的首部

  1. 请求首部字段 (Request Header Fields)

从客户端想服务器端发送请求报文时使用的首部。补充了请求时的附加内容、客户端信息、响应内容相关优先级等信息。

3.响应首部字段 (Response Header Fields)

从服务器端向客户端返回响应报文时使用的首部。补充了响应的附加内容,也会要求客户端附加额外的内容信息。

  1. 实体首部字段 (Entity Header Fields)

针对请求报文和响应报文的实体部分使用的首部。补充了资源内容更新时间等于实体有关的信息。