2012-08-15 73 views
0

對於我的web應用程序,我需要一種方法來檢測應用程序是否失去了連接到它所運行的IP地址(100.100.100.100)的連接,或者設備是否已連接到不同的網絡/連接。這一切都必須在客戶端完成。目前我正在做以下工作,但似乎沒有工作。任何想法如何做到這一點?謝謝。檢查連接到IP地址是否丟失

$.ajax({ 
    type: "GET", 
    url: "100.100.100.100", 
    success: function(){ 
    alert("Connection Good!") 
    } 
    error: function(XMLHttpRequest, textStatus, errorThrown){ 
    if(textStatus == 'timeout') { 
     alert("Connection has been lost."); 
    } 
    } 
}); 

回答

0

由於同源策略,它不會工作到隨機IP地址。要做的最好的事情是向服務器上的URL提供請求(即與JS文件相同的權限),從而提供已知的良好響應。

**更新 要明確,'權威'我的意思是主機,端口和協議。例如,http://google.comhttps://google.com不一樣http://google.com:8080

0

您可以創建實際ping目標IP的簡單PHP(或任何您正在使用的語言)。

然後就可以調用

http://www.example.com/my_ping_script.php?target=10.10.10.10 

通過AJAX,它會返回連接狀態爲簡單的「OK」或「丟失」。我的意思是ICMP ping