2013-03-26 60 views
0

如何獲得JQuery或Phonegap中的IP地址?如何獲得JQuery或Phonegap跨平臺的IP地址

我正在爲Android,Iphone和windows開發跨平臺應用程序。

我需要找到請求的IP地址。

+2

您無法訪問客戶端上的用戶IP地址,請參閱以下問題以瞭解使用服務和ajax的解決方案:http://stackoverflow.com/questions/391979/get-client-ip-using- just-javascript – adeneo 2013-03-26 12:43:40

回答

0

試試這個

<html> 
<head> 
<script type="text/javascript" language="javascript"> 
    function myIP() { 
    if (window.XMLHttpRequest) 
    xmlhttp = new XMLHttpRequest(); 
    else 
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 

    xmlhttp.open("GET","http://jsonip.appspot.com/?asp.net",false); 
    xmlhttp.send(); 

    hostipInfo = xmlhttp.responseText; 
    obj = JSON.parse(hostipInfo); 
    document.getElementById("IP").value=obj.ip; 
    document.getElementById("ADDRESS").value=obj.address; 
} 
</script> 
</head> 
<body onload="myIP()"> 
IP :<input type="text" id="IP" name="IP" /> 
ADDRESS :<input type="text" id="ADDRESS" name="ADDRESS" /> 

</body> 
</html> 
+0

很好,很好的例子 – user1912734 2013-03-26 12:59:05

+0

@ user1912734你真的覺得更長==好?另一個答案比較短,因爲它使用jQuery。 – 2013-03-26 13:00:52

+0

這是寫得很好的函數,所以我可以把它放在我的html頁面上,它也給出瞭如何使用響應的例子。 – user1912734 2013-03-26 13:57:53

2

這很簡單! ;)

$.getJSON("http://jsonip.appspot.com", 
    function(data){ 
     alert("Your ip: " + data.ip); 
    }); 

如果你不想使用http://jsonip.appspot.com,你必須在服務器上運行一個PHP的可能性,只是http://domain/ip.php,更換http://jsonip.appspot.com其中ip.php是一樣的東西:

IP。 php

<?php 
    echo json_encode(array("ip"=>$_SERVER['REMOTE_ADDR'])); 
?> 
+0

這取決於服務的預測是什麼? – 2013-03-26 12:50:42

+1

服務的「主頁」在這裏:http://stackoverflow.com/a/102681/499214 – 2013-03-26 12:55:53

+0

不錯,我會試試這個 – user1912734 2013-03-26 12:58:50