什么会导致页面被取消?我有一个Chrome开发者工具的截图。
这种情况经常发生,但不是每次都发生。似乎一旦缓存了一些其他资源,页面刷新就会加载LeftPane.aspx。真正奇怪的是,这只发生在谷歌Chrome浏览器中,而不是ie8。知道为什么Chrome会取消一个请求吗?
什么会导致页面被取消?我有一个Chrome开发者工具的截图。
这种情况经常发生,但不是每次都发生。似乎一旦缓存了一些其他资源,页面刷新就会加载LeftPane.aspx。真正奇怪的是,这只发生在谷歌Chrome浏览器中,而不是ie8。知道为什么Chrome会取消一个请求吗?
当前回答
我在加载300张图片作为背景图片时遇到了这种情况。我猜一旦第一个超时,它就会取消所有其他的,或者达到最大并发请求。需要一次实现5个
其他回答
在这能帮助任何人,我遇到取消状态时,我省略了返回false;在表单中提交。这导致ajax发送之后立即紧跟提交操作,这将覆盖当前页面。代码如下所示,在末尾返回重要的false。
$('form').submit(function() {
$.validator.unobtrusive.parse($('form'));
var data = $('form').serialize();
data.__RequestVerificationToken = $('input[name=__RequestVerificationToken]').val();
if ($('form').valid()) {
$.ajax({
url: this.action,
type: 'POST',
data: data,
success: submitSuccess,
fail: submitFailed
});
}
return false; //needed to stop default form submit action
});
希望这能帮助到别人。
这是发生在我身上的事情:服务器为302重定向返回了一个格式错误的“Location”头。 当然,Chrome没有告诉我这一点。我在firefox中打开了这个页面,并立即发现了问题。 有多种工具真好:)
status= cancelled也可能发生在JavaScript事件的ajax请求上:
<script>
$("#call_ajax").on("click", function(event){
$.ajax({
...
});
});
</script>
<button id="call_ajax">call</button>
事件成功发送请求,但随后被取消(但由服务器处理)。原因是,元素在单击事件时提交表单,无论您是否对同一单击事件发出任何ajax请求。
为了防止请求被取消,JavaScript event.preventDefault();必须被称为:
<script>
$("#call_ajax").on("click", function(event){
event.preventDefault();
$.ajax({
...
});
});
</script>
在我的情况下,它开始出现后chrome 76更新。
由于一些问题在我的JS代码,窗口。位置被多次更新,导致取消先前的请求。 虽然这个问题之前就存在,但chrome在更新到版本76后开始取消请求。
另一件要注意的事情可能是AdBlock扩展,或一般的扩展。
但“很多”人有AdBlock....
为了排除扩展,以隐身方式打开一个新标签,确保你想测试的扩展“允许隐身”是关闭的。