记一次get request请求的header头信息

当我们打开一个时,往往先触发首页的渲染,这一步一般是一个Get请求,通过F12打开开发者模式你会在Headers标签下看到类似以下的头信息:
General
Request URL: http://localhost:8000/ 这是说本次请求的URL是http://localhost:8000/
Method: GET 请求方法为GET方式,如果是表单提交可以用post,这里不必纠结何种方法,方法是人定的,用到再说……
Status Code: 304 Not Modified 状态码不是200 ok,说明本次请求浏览器使用了上次成功请求的本地缓存,即通过与握手确定本地缓存内容与响应内容一致,可以直接使用本地缓存,注意到下面的 Headers参数里有If-None-Match,值为上次返回的ETag响应头的值。
Remote Address: 127.0.0.1:8000 服务器(进程)的地址,注意标识一个进程的地址我们用格式:IP:Port,这里的127.0.0.1表示这是一个本地服务进程,在8000端口上监听,当一个请求访问本机8000端口时,服务进程响应之。
Referrer Policy: strict-origin-when-cross-origin 这里的referrer是当前文档来自的上一文档URL,这里采用的引用策略是对于同源的请求,会发送完整的URL作为引用地址;在同等安全级别的情况下,发送文件的源作为引用地址(HTTPS->HTTPS);在降级的情况下不发送此首部 (HTTPS->HTTP)。
关于Referrer Policy的所有取值和介绍,请度娘。

Response Headers
access-control-allow-origin: * 对跨域访问的控制是允许所有域。
Content-Type: text/html; charset=utf-8 本次请求返回给浏览器的内容类型是文本类超文本传输语言,对内容的编码方式是utf-8。
Date: Mon, 23 Nov 2020 03:40:36 GMT 响应时间带日期和时间和时区。
ETag: W/”189b-LDkLs8lXNcXMt+V765yh7Mesk10″ Etag 是URL的Entity Tag,用于标示URL对象是否改变,区分不同语言和Session等等。具体内部含义是使服务器控制的,就像Cookie那样。
Vary: Accept-Encoding Vary 可对缓存进行控制。源服务器会向代理服务器传达关于本地缓存使用方法的命令。
X-Content-Encoding-Over-Network: gzip 内容压缩方式 gzip
X-Powered-By: Express node.js express框架

Headers
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9 这行表示当前浏览器声明的可支持的对象,q=0.9表示权重或优先级。
Accept-Encoding: gzip, deflate, br 当前浏览器声明接受的编码方式(压缩),共声明了三种,其中br是一种无损压缩方式,压缩比很高。
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8 当前浏览器环境接受的语系,优先简体中文,然后是英语。
Connection: keep-alive 保持TCP长连接,具体连接时长由服务端决定。
Host: localhost:8000 请求发出的主机和端口。
If-None-Match: W/”189b-LDkLs8lXNcXMt+V765yh7Mesk10″ 取自上次ETag将要与服务器端比较的值。
Sec-Fetch-Dest: document 这是Chrome浏览器特有的属性,表示再次请求的目标是文档,这种一般是直接从浏览器输入链接触发的,如果是点击图片,则是image。
Sec-Fetch-Mode: navigate 表示这是一个浏览器的页面切换请求()。 navigate请求仅在浏览器切换页面时创建,该请求应该返回HTML。这个属性是请求模式,取值有很多,详见百度。
Sec-Fetch-Site: none 这个属性表示一个请求发起者的来源与请求目标来源之间的关系,比如跨域、同源或同站点,这里指用户触发页面跳转,起点没有来源设置为none。内涵丰富,具体百度。
Sec-Fetch-User: ?1 取值是一个Boolean类型的值,true(?1)表示导航请求由用户激活触发(鼠标点击/键盘),false(?0)表示导航请求由用户激活以外的原因触发。
Upgrade-Insecure-Requests: 1 升级不安全的请求为安全请求,即升级http请求为https请求,这是Chrome的功能,具体是否能升级还取决于服务端,比如服务端要设置升级和相应的资源可以响应。
User-Agent: Mozilla/5.0 ( NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.66 Safari/537.36 用户代理,它是一个特殊字符串头,使得服务器能够识别客户使用的及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。

声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 智乐兔
转载请注明:转自《记一次get request请求的header头信息
本文地址:https://www.zhiletu.com/archives-10190.html
关注公众号:智乐兔

赞赏

wechat pay微信赞赏alipay pay支付宝赞赏

上一篇
下一篇

相关文章

在线留言

你必须 登录后 才能留言!