2015-05-10 45 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

相关问题