我有一个项目,我需要检查我的应用程序的服务器是否仍在线。 经过长时间的搜索,我找到了一个有效的脚本。但并不完美。当我从服务器上拔下网线时,我的应用程序需要15秒才能识别出服务器已关闭。
该脚本查找ping.html文件,出于缓存的原因,我需要将随机变量放在我认为之后:p
有人知道如何通过延迟解决问题吗?
function ping(){
$.ajax({
cache: false,
url: 'ping.html?myRand=' + guid(),
success: function(result){
$('.conmessage').hide();
enable();
},
error: function(result){
$('.conmessage').show();
disable();
}
});
}
function s4() {
return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
}
function guid() {
return s4()+s4()+"-"+s4()+"-"+s4()+"-"+s4()+"-"+s4()+s4()+s4();
}
答案 0 :(得分:2)
我猜你应该在你的ajax调用中使用timeout属性(以毫秒为单位):
$.ajax({
cache: false,
url: 'ping.html?myRand=' + guid(),
timeout: 1000,
success: function(result){
$('.conmessage').hide();
enable();
},
error: function(result){
$('.conmessage').show();
disable();
}
});