关于浏览器Provisional headers are shown提示 的解决方案
大多数人遇到这个问题,貌似都是做支付密码验证相关的项目遇到这个问题的。
遇到这个警告了,导致发送的ajax一直处于挂起的状态,但是挂了很长的时间,又能继续运作,我用到的一个组件,需要发送十几个这种ajax,这样挂起等待无意是致命的。
Provisional headers are shown提示,一般来说,如果看到这个提示,说明这个请求并没有发送出去。至于出现这个问题的原因有很多,在这里介绍两种解决这个问题的办法
1、chrome://net-internals 来帮助定位问题
首先在chrome中的地址栏中直接输入chrome://net-internals,就可以直接进入工具的界面:
点击上面那个地方,然后会出来:
在输入栏输入你挂起的response url ,然后右边就是你接口的一些响应相关的信息。
根据这些来判断你接口出现Provisional headers are shown的原因
2、第二种方法直接简单粗暴,直接打开hosts,因为在密码组件用的奇怪某某厂商的,安装密码控件之后,会自动在hosts生成一段配置:
本来应该是
然后在这个过程中因为一些其他的原因,密码控件在安装的时候还给我另外生成了一条hosts配置
就是它导致了跨域的时候一直Provisional headers are shown 挂起了
删除之,
问题解决。
申明一下,本人的第二种情况比较特殊,可能大多数都不会碰到第二种情况,多用第一种情况啦查看问题出在什么地方才是解决正途。