我正在开展一个项目,检查多个网站是否在线。我试图利用以下代码来检查一个众所周知的网站,作为一个试验,但它总是返回错误。我怎么能解决它?
function Ping() {
$.ajax({
type: "HEAD",
url: "http://www.google.com",
success: function(result){
alert('reply');
},
error: function (result) {
alert('failure');
}
});
}
window.setInterval(Ping, 10000);
答案 0 :(得分:2)
使用javascript的服务器端代理的替代方法是使用您想要ping的URL加载图像(new Image())并检查图像的onload / onerror事件中的状态。
例如:
var img = new Image();
img.onload = function(){
// the ip/domain is online
}
img.onerror = function(e){
// the ip/domain is online
}
img.src = 'http://www.google.co.in'; // the ip/domain to ping
完整的例子在这里: http://jsfiddle.net/GSSCD/203/
这不是一个完整的解决方案,但需要进一步实施;)