2015-05-10 75 views
-1

有什麼方法可以使用javascript檢索客戶端IP嗎?或者只有每個jquery?我不這麼認爲,但我想確認一下。有沒有什麼辦法只使用JavaScript檢索客戶端IP?

+0

AFAIK沒有辦法從瀏覽器獲取這類信息,但即使有,它會是什麼用途?大多數瀏覽器運行在NAT防火牆後面,您仍然不知道公共地址。 –

+0

[只使用JavaScript獲取客戶端IP?]的可能的副本(http://stackoverflow.com/questions/391979/get-client-ip-using-just-javascript) – ThisClark

回答

0

您必須使用服務器端服務。有一些公開可用的,可以消耗,如:

<html> 
 
    <head> 
 
    <title>What is my IP</title> 
 
    </head> 
 
    <body> 
 
    <script> 
 
     VIH_DisplayOnPage = "no"; 
 
    </script> 
 
    <script src="http://scripts.hashemian.com/js/visitorIPHOST.js.php"></script> 
 
    <script> 
 
     document.write('Your IP is ' + VIH_HostIP); 
 
    </script> 
 
    </body> 
 
</html>

0

沒有,有沒有辦法讓只有使用JavaScript客戶端IP。

考慮一下它是可能的反指稱:假設您的桌面上有一個靜態HTML頁面,沒有互聯網連接,也沒有鏈接資源。 IP會被報告爲什麼?它有什麼意義?

返回在ActiveX的日子裏,你可能會用的東西發揮這樣的:

obj = new ActiveXObject("rcbdyctl.Setting"); 
rslt = obj.GetIPAddress; 

但那些日子已經一去不復返了。此外,如果一個客戶端在NAT後面,那麼只會報告一個LAN IP。您需要探測某個服務器以獲取WAN IP報告。


您應該使用服務器端代碼來執行此操作。作爲一個例子,您可以使用像ip.jsontest.com這樣的服務。它返回一個像這樣的JSON對象:

{"ip": "152.178.193.25"} 

使用客戶端AJAX進行查詢。

+0

ActiveXObject僅在IE瀏覽器中可用。 – joseantgv

相關問題