最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 详解 chrome devtools network 中的 header

    正文概述 掘金(reborn)   2021-03-19   962

    作为一个前端开发,无论是开发调试、排查问题、分析请求都离不开 chrome devtools,它真的是一个开发神器,隐藏着很多功能可以让我们探索。今天我主要来详细介绍一下其中的一个小功能,通过 devtools 来查看网络请求中的 header 信息。

    如何查看 header, Cmd + Option + I 唤起 Developer Tools。选中 Network,刷新页面,选中任意请求,我们就可以看到 Headers 信息。如下:

    详解 chrome devtools network 中的 header

    接下来我们一个个来看一下 Headers 里面有什么?

    Headers

    General

    简单来说,General 就是一个概览,包含请求、返回的一些重要信息,但是不包含请求体里面的信息。比如请求的地址 Request URL,请求方法 Request Method,返回的状态码 Status Code,远程地址 Remote Address,以及 Referrer 策略 Referrer Policy 等。

    Response Headers

    返回头是指响应体之外的额外信息,比如文件类型、压缩协议、文件大小、缓存控制、访问控制、cookie等信息。比如下面这些:

    详解 chrome devtools network 中的 header

    Request Headers

    请求头是提供一些请求的配置,方便服务器可以根据我们请求的信息来调整响应。比如通过 Accept-* 来标识希望服务器能够提供的格式,还有一些比如用于安全认证、缓存控制的信息。比如下面这些: 请求的内容:

    详解 chrome devtools network 中的 header

    Query String Parameters

    Get 请求中的参数会在 Query String Parameters 展示出来

    详解 chrome devtools network 中的 header

    Request Payload

    Post 请求中带的信息会在 Request Payload 中展示出来

    详解 chrome devtools network 中的 header

    Form Data

    表单信息,请求头会带 Content-Type: multipart/form-data;

    详解 chrome devtools network 中的 header

    常见问题

    Referrer Policy

    我们看到 General 中都有一个 Referrer Policy 这个头部。这个的作用是控制请求中 refer 是否带 refer,带哪些信息,有 8 种策略,具体可以参考: Referrer-Policy. 那这个怎么设置呢?为什么 General 中的 Referrer Policy 有些是 strict-origin-when-cross-origin,有些是unsafe-url,我们请求头里面并没有设置 CSP 来控制,也没有通过 meta 标签修改过,为什么会自动有呢?那是因为浏览器有一个默认的策略,在chrome 85之前是 no-referrer-when-downgrade,85之后改为 strict-origin-when-cross-origin,也就是把默认的策略改的更严格了,跨域的时候只带 origin,不会把 path、query 也带上。

    Pseudo-header

    我们会看到有些请求头里面会有一些以 : 开头的key,比如 :authority、:method、:path、:scheme等,简单来说是 Http2 中用来把重要的 ip 层的信息传递给 TPC,UDP 的,一般看到这些请求头你就知道这个请求使用的 Http2 协议。更多可以参考:What is the Significance of Pseudo Header used in UDP/TCP

    view source

    我们看到有些 Headers 中的 Request Headers 和 Response Headers 右边是有 view source 的,有些是没有的,这个是为什么呢?因为 view source 本来的含义是看源码,而我们知道 http2 请求头是用二进制编码的,不是文本格式,所以如果让你看一堆二进制是没有意义的。所以对于 http1.x 的请求,我们是可以通过 view source 查看的,Http2 就没有 view source 了。

    Provisional headers are shown

    请求没有真正发送,通常是因为加载了缓存资源,也有可能是装了广告插件,更多可能可以参考:caution-provisional-headers-are-shown-in-chrome-debugger

    参考

    1. Chrome浏览器Referrer-Policy默认值变更
    2. HTTP headers

    起源地下载网 » 详解 chrome devtools network 中的 header

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元