Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果浏览器在服务器响应之前重定向到其他页面,ajax调用会发生什么情况?_Javascript_Ajax_Browser - Fatal编程技术网

Javascript 如果浏览器在服务器响应之前重定向到其他页面,ajax调用会发生什么情况?

Javascript 如果浏览器在服务器响应之前重定向到其他页面,ajax调用会发生什么情况?,javascript,ajax,browser,Javascript,Ajax,Browser,此场景的实际用例是,为网站统计(google analytics、omniture等)触发ajax调用 如果readyState为2,服务器处理请求是否足够 不确定,我把问题问得很恰当。提前感谢。当用户加载其他页面时,任何正在进行的AJAX调用都会被中止。但是,如果请求已发送到服务器,则服务器通常会将请求处理到完成(如果您不小心处理会话,则可能会将事情锁定!) 如果您正在使用会话,请确保调用session\u write\u close()提交会话文件并将其解锁,从而允许启动新请求 编辑:哦,是

此场景的实际用例是,为网站统计(google analytics、omniture等)触发ajax调用

如果readyState为2,服务器处理请求是否足够


不确定,我把问题问得很恰当。提前感谢。

当用户加载其他页面时,任何正在进行的AJAX调用都会被中止。但是,如果请求已发送到服务器,则服务器通常会将请求处理到完成(如果您不小心处理会话,则可能会将事情锁定!)

如果您正在使用会话,请确保调用
session\u write\u close()
提交会话文件并将其解锁,从而允许启动新请求

编辑:哦,是的,不管你做什么,不要这样做:

xhr.onreadystatechange = function() {
    if( this.readyState == 4) {
        if( this.status != 200) alert("Error!");
    }
};
否则,试图离开页面的用户将因每个中止的AJAX请求而受到一个警报的轰炸-使用自定义对话框或在
this.status==0
时不报告错误,以便用户可以不受限制地进入下一页