likes
comments
collection
share

Chrome 开发者工具 network 显示 Provisional headers are sh

作者站长头像
站长
· 阅读数 40

HTTP 标头是显示在超文本传输协议 (HTTP) 的消息标头的请求和响应消息中的名称或值对。 请求标头包含有关要获取的资源或请求资源的客户端的更多信息。 响应标头包含有关响应的附加信息,例如其位置或提供它的服务器。 这些标头通常对最终用户不可见,仅由服务器和客户端应用程序处理或记录。

有时标头会显示警告消息 Provisional headers are shown

Chrome 开发者工具 network 显示 Provisional headers are sh

这可能是由于请求未通过网络发送(而是从本地缓存提供),它不存储原始请求标头。 在这种情况下,我们可以禁用缓存以查看完整的请求标头。

Chrome 开发者工具 network 显示 Provisional headers are sh

也可能是由于网络资源无效。例如,在 console 中尝试输入下面的命令:

fetch("https://jec.fyi.com/unknown-url/")

由于安全原因,DevTools 也可能只显示临时标题。

Chrome 开发者工具 network 显示 Provisional headers are sh

为挂起的请求显示的 HTTP 标头是临时的。 它们代表从 Blink 发送到 Chromium/Chrome 的请求。Blink 是支持 Chromium(以及 Chrome)的开源浏览器布局引擎。

Chromium/Chrome 在服务器响应之前不会更新标头,以避免仅由 DevTools 使用的附加通知。 简而言之,临时标头意味着它们尚未响应的请求。 请注意,这只是一个通知,而不是实际的错误消息。

有可能 Chrome 使用自己的缓存来获取您的资源。 该请求不是通过网络发送的,而是从本地缓存中提供的,这种情况下该缓存不存储原始请求标头。

这个警告意味着:请求的资源可能被阻塞(扩展/其他机制)。出现这个警告的原因是获取资源的请求并没有真正发生,所以header显示的是虚假信息,直到服务器真正响应回来,这里的header信息才会更新为真实的请求头部信息。但是,这可能也不会发生,因为请求可能会被阻止。 比如AdBlock之类的 Chrome 扩展。