什么会导致页面被取消?我有一个Chrome开发者工具的截图。
这种情况经常发生,但不是每次都发生。似乎一旦缓存了一些其他资源,页面刷新就会加载LeftPane.aspx。真正奇怪的是,这只发生在谷歌Chrome浏览器中,而不是ie8。知道为什么Chrome会取消一个请求吗?
什么会导致页面被取消?我有一个Chrome开发者工具的截图。
这种情况经常发生,但不是每次都发生。似乎一旦缓存了一些其他资源,页面刷新就会加载LeftPane.aspx。真正奇怪的是,这只发生在谷歌Chrome浏览器中,而不是ie8。知道为什么Chrome会取消一个请求吗?
当前回答
其中一个原因可能是XMLHttpRequest.abort()在代码中某处被调用,在这种情况下,请求将在Chrome开发工具网络选项卡中具有取消状态。
其他回答
在这能帮助任何人,我遇到取消状态时,我省略了返回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
});
希望这能帮助到别人。
在我的案例中,显示电子邮件客户端窗口的代码导致Chrome停止加载图像:
document.location.href = mailToLink;
移动到$(window)。负载(功能 () {...}) 而不是美元(函数 () {...}) 帮助。
在我的情况下,它开始出现后chrome 76更新。
由于一些问题在我的JS代码,窗口。位置被多次更新,导致取消先前的请求。 虽然这个问题之前就存在,但chrome在更新到版本76后开始取消请求。
I had the same issue when updating a record. Inside the save() i was prepping the rawdata taken from the form to match the database format (doing a lot of mapping of enums values, etc), and this intermittently cancels the put request. i resolved it by taking out the data prepping from the save() and creating a dedicated dataPrep() method out of it. I turned this dataPrep into async and await all the memory intensive data conversion. I then return the prepped data to the save() method that i could use in the http put client. I made sure i await on dataPrep() before calling the put method:
等待dataToUpdate =等待dataPrep(); http。把(apiUrl dataToUpdate);
这解决了间歇性取消请求的问题。
其中一个原因可能是XMLHttpRequest.abort()在代码中某处被调用,在这种情况下,请求将在Chrome开发工具网络选项卡中具有取消状态。