我正在开发ajax调用的应用程序,并且我遇到了一些相当特殊的行为,有时当ajax调用被触发时,它会自我复制,第二个完成但我没有响应回来和原来的一直持续加载这是固定的时候再次发起ajax调用或当我刷新。jquery ajax调用响应永不返回
问题是我不能再现这种行为,因为它发生随机。大多数情况下,当选项卡处于打开状态时,我处于不同的选项卡或程序中。
我注意到使用萤火虫的唯一情况是响应标题似乎有些问题。
相比成功的通话,他们是在一个不同的顺序和一些信息完全丢失。 Content-Type
总是比我在$.ajaxSetup
中定义的text/html
更多。
$.ajaxSetup({
dataType:'html',
cache:false,
type:'POST',
timeout:15000,
error:function() {
alert('Action aborted please try again');
},
complete:function(XMLHttpRequest,textStatus){
//console.log('XMLHttpRequest.readyState : '+XMLHttpRequest.readyState+'\nXMLHttpRequest.statusText : '+XMLHttpRequest.statusText+'\nXMLHttpRequest.status : '+XMLHttpRequest.status+'\ntextStatus : '+textStatus);
}
});
和我的Ajax调用的一个例子:
var dataString = 'value='+value+'&value1='+value1+'&value2='+value2;
$.ajax({
url:'file.php',
data:dataString,
success:function(resp){
alert(resp);
}
})
这种行为往往发生了很多我添加了一个dataType
,也是一个winXP的SP3本地机器上查看时它正在发生更加频繁之前使用XAMPP,我认为既Firefox和IE。
我已经在运行Windows Server 2008和Apache和PHP独立版的服务器上进行了测试,而不是xampp,这种情况发生得更少。 形成我的家用电脑它几乎从来没有发生上述测试是在我的办公室电脑。
有没有人遇到过类似的行为类型,或者有没有办法以不同的方式编写我的ajax调用。
我想避免使用插件和长时间轮询在apache服务器上似乎有点沉重。
这就像原来的请求无法完成,而是即时得到这是从来没有实际请求的响应 – alex 2010-12-07 12:54:43