有一个基于简单的web app
需要用长链接判断对方的状态,代码如下:
function longPoll(call){
$.ajax({
type:"POST",
dataType:"json",
url:"/longPoll.php",
timeout:80000, //ajax请求超时时间80秒
data:{theTime:"80",id:1,isAjax:1}, //40秒后无论结果服务器都返回数据
success:function(data,textStatus){
//从服务器得到数据,显示数据并继续查询
if(data.error=="0"){
//do something
}
//未从服务器得到数据,继续查询
if(data.error=="1"){
longPoll();
}
},
//Ajax请求超时,继续查询
error:function(XMLHttpRequest,textStatus,errorThrown){
longPoll();
}
});
}
正常情况下,可以正常的发送和返回信息,
但是手机一黑屏,再点亮以后,longPoll就不工作了,这有啥解决办法没?
应该是连接被断了,可以在longPoll结尾设置lastCallTime,然后再起一个定时器,发现时间超过最长时间了,就重新发起