什么会导致页面被取消?我有一个Chrome开发者工具的截图。
这种情况经常发生,但不是每次都发生。似乎一旦缓存了一些其他资源,页面刷新就会加载LeftPane.aspx。真正奇怪的是,这只发生在谷歌Chrome浏览器中,而不是ie8。知道为什么Chrome会取消一个请求吗?
什么会导致页面被取消?我有一个Chrome开发者工具的截图。
这种情况经常发生,但不是每次都发生。似乎一旦缓存了一些其他资源,页面刷新就会加载LeftPane.aspx。真正奇怪的是,这只发生在谷歌Chrome浏览器中,而不是ie8。知道为什么Chrome会取消一个请求吗?
当前回答
我们有这个问题有标签<按钮>的形式,这是应该从js发送ajax请求。但是这个请求被取消了,由于浏览器,它会自动发送表单内的任何点击按钮。
因此,如果你真的想在页面上使用button而不是常规的div或span,并且你想发送form throw js -你应该设置一个带有preventDefault函数的监听器。
e.g.
$('button').on('click', function(e){
e.preventDefault();
//do ajax
$.ajax({
...
});
})
其他回答
这是发生在我身上的事情:服务器为302重定向返回了一个格式错误的“Location”头。 当然,Chrome没有告诉我这一点。我在firefox中打开了这个页面,并立即发现了问题。 有多种工具真好:)
这是chrome取消请求的另一个例子,我刚刚遇到过,上面的答案中没有提到。
简单地说 我的android手机上的自签名证书不受信任。
细节 我们正处于开发/调试阶段。url指向自签名主机。代码是这样的:
location.href = 'https://some.host.com/some/path'
Chrome只是默默地取消了请求,没有给像我这样的web开发新手留下任何线索来解决这个问题。一旦我使用android手机下载并安装了证书,问题就消失了。
你可能想要检查“X-Frame-Options”标题标签。如果它设置为SAMEORIGIN或DENY,那么iFrame插入将被Chrome(和其他浏览器)根据规范取消。
另外,注意一些浏览器支持ALLOW-FROM设置,但Chrome不支持。
为了解决这个问题,你需要删除“X-Frame-Options”标题标签。这可能会让你容易受到点击劫持攻击,所以你需要决定风险是什么以及如何减轻它们。
当我在iframe内的单独域上的安全页面和非安全页面之间重定向时,发生了一个取消的请求。重定向请求在开发工具中显示为“已取消”请求。
我有一个iframe页面,其中包含一个由我的支付网关托管的表单。当iframe中的表单被提交时,支付网关将重定向回我服务器上的URL。重定向最近停止工作,并以“取消”请求结束。
似乎Chrome(我使用的是Windows 7 Chrome 30.0.1599.101)不再允许在iframe内重定向到一个单独域上的非安全页面。为了解决这个问题,我只是确保iframe中的任何重定向请求总是发送到安全url。
当我用一个iframe创建一个更简单的测试页面时,在控制台中有一个警告(我之前错过了或可能没有显示):
[Blocked] The page at https://mydomain.com/Payment/EnterDetails ran insecure content from http://mydomain.com/Payment/Success
在PC、Mac和Android上的Chrome浏览器中,重定向变成了被取消的请求。我不知道这是否是特定于我的网站设置(SagePay Low Profile)或如果Chrome中有什么变化。
我们遇到(取消)状态的另一个地方是在特定的TLS证书错误配置中。如果一个网站(例如https://www.example.com)配置错误,导致证书不包括www。但有效的https://example.com, chrome将取消此请求,并自动重定向到后者的网站。Firefox则不是这样。
当前有效的示例:https://www.pthree.org/