2

我尝试使用以下代码获取我的 IP:

$.getJSON("http://jsonip.appspot.com?callback=?", function(data){ip=data.ip});

但这似乎对我不起作用。请帮忙。

提前致谢。

4

4 回答 4

8

您可以使用此站点通过 JSON 获取您的 IP。

http://jsonip.com

于 2013-01-10T20:35:26.463 回答
2

您需要向后端 Web 服务器发送 ajax 请求,并使用服务器返回的请求客户端的 ip 响应 ajax 请求。代码将根据您的 Web 应用程序的语言而改变。

JavaScript 本身无法读取本地计算机的 IP 地址,因此 JavaScript 要获取该信息,我们需要使用不同的语言来获取该信息。

服务器端代码选项的几个片段

在 JSP 中

ip = '<%=request.getRemoteAddr()%>';

在 PHP 中

ip = "<?php echo $_SERVER['REMOTE_ADDR']?>";

在 ASP

ip = '<%= Request.ServerVariables("REMOTE_ADDR")%>';

在 ASP.NET 中

ip = '<%= Request.UserHostAddress>';

在冷聚变中

ip = '<cfoutput>#cgi.remote_addr#</cfoutput>';

参考:获取访问者的 IP 地址

于 2013-01-10T05:48:44.647 回答
0
<script type="application/javascript">
function getip(json){
  alert(json.ip); // alerts the ip address
}

<script type="application/javascript" src="http://jsonip.appspot.com/?callback=getip"></script>
于 2013-01-10T05:18:06.423 回答
0

使用 jQuery 获取您的 IP

一行JS就可以得到你的公网IP地址?有一项免费服务可以为您提供此功能,您只需要一个获取请求即可:

   $.get('http://jsonip.com/', function(r){ console.log(r.ip); });

要使上述代码段正常工作,您的浏览器必须支持 CORS(跨域请求共享)。否则会抛出安全异常。在旧浏览器中,您可以使用此版本,它使用 JSON-P 请求:

   $.getJSON('http://jsonip.com/?callback=?', function(r){ console.log(r.ip); });
于 2014-03-11T06:33:45.820 回答