我注意到一个奇怪的警告信息,当使用谷歌chrome检查器(F12)查看下载的资源:
注意显示临时标题
我发现一些可能相关的东西,网络面板:添加临时请求头的警告,但我不能完全理解它。相关问题可以发现Chrome块请求以及XMLHttpRequest无法加载。未加载的资源显示警告:显示临时标头。
与第一个问题类似,我的资源被阻塞了,但后来自动加载了相同的资源。不像第二个问题,我不想解决任何问题;我想知道这条信息是什么意思以及我为什么收到它。
我注意到一个奇怪的警告信息,当使用谷歌chrome检查器(F12)查看下载的资源:
注意显示临时标题
我发现一些可能相关的东西,网络面板:添加临时请求头的警告,但我不能完全理解它。相关问题可以发现Chrome块请求以及XMLHttpRequest无法加载。未加载的资源显示警告:显示临时标头。
与第一个问题类似,我的资源被阻塞了,但后来自动加载了相同的资源。不像第二个问题,我不想解决任何问题;我想知道这条信息是什么意思以及我为什么收到它。
当前回答
尝试用ctrl + shift +F5重新加载页面,然后再次检查请求头
没有显示完整的头文件,因为有可能请求没有发送到服务器,而是直接从浏览器的缓存(例如使用service worker)提供服务
其他回答
当使用一些包(如webpack-hot-middleware)并同时打开多个页面时,也会出现此问题。Webpack-hot-middleware将为每个页面创建一个连接,用于侦听代码的更改,然后刷新页面。每个浏览器都有每个服务器最大连接数限制,对于Chrome来说是6个,所以如果你已经在Chrome中打开了超过6个页面,新的请求将一直挂在那里,直到你关闭一些页面。
这种情况(仅针对跨源请求)也可能发生,因为有一种名为站点隔离的新功能
本页详细介绍了问题和解决方案。也就是去chrome://flags/#site-isolation-trial-opt-out,把这个设置改为“Opt-out”,然后重新加载chrome。
这是一个众所周知的问题。然而,该页面说它在chrome 68中是固定的,但我正在运行chrome 68,我仍然有这个问题。
这可能是因为您发送了Ajax请求,同时使用位置将页面跳转到另一个页面。Href之类的。所以之前的请求失败了。
资源可能被一个扩展阻塞(在我的情况下是AdBlock)。
该消息之所以存在,是因为从未发出检索该资源的请求,因此显示的标头并不是真正的标头。正如在您引用的问题中所解释的那样,服务器响应时更新真实的头,但如果请求被阻塞,则没有响应。
我发现的方式是通过Chrome中的net-internals工具扩展阻止了我的资源:
chrome的最新版本
在地址栏中输入chrome://net-export/,然后按enter键。 开始录音。并保存录音文件到本地。 打开显示问题的页面。 回到net-internals 您可以查看“记录日志”文件https://netlog-viewer.appspot.com/#import 点击events(###),然后使用文本框找到与你的资源相关的事件(使用部分URL)。 最后,单击事件,看看所显示的信息是否告诉了你一些东西。
chrome的旧版本
在地址栏中输入chrome://net-internals并按enter键。 打开显示问题的页面。 返回net-internals,单击events(###),并使用文本字段查找与您的资源相关的事件(使用URL的一部分)。 最后,单击事件,看看所显示的信息是否告诉了你一些东西。
如果响应无效并因此被浏览器删除,也会出现此警告消息。
在我的例子中,请求被正确地发送到服务器,服务器端代码随后产生一个错误,我的自定义错误处理在HTTP状态消息字段中返回错误消息。但是客户端没有收到此错误,因为错误消息中的无效字符(此处描述为http://aspnetwebstack.codeplex.com/workitem/1386)导致响应报头损坏。