很久以来,我都是经过http://fw.qq.com/ipaddress来得到客户端用户的IP,这个方法简单、快速、实用 。
我们调用它的写法是:
<script type="text/javascript" src="http://fw.qq.com/ipaddress"></script>
它可以返回用户IP和地点,比喻:
var IPData = new Array("220.181.108.85","","北京市","");
我们即可以运用IPData[0]作为用户IP了。
可是近来不知道腾讯怎么回事,这个地点失效了,提示“HTTP 500 内部服务器失败”。
用js得到客户端IP的另一方法
最近,我知道了另外一个可以得到客户端IP的方法,这个服务是海外一网站提供的。
运用方法以下:
<script language="JavaScript"> VIH_BackColor = "palegreen"; VIH_ForeColor = "navy"; VIH_FontPix = "16"; VIH_DisplayFormat = "You are visiting from: IP Address: %%IP%% Host: %%HOST%%"; VIH_DisplayOnPage = "yes"; </script> <script language="JavaScript" src="http://www.hashemian.com/js/visitorIP.js.php"></script>
以下体现的便是你的IP:
You are visiting from: IP Address: 117.87.4.102 Host: 102.4.87.117.broad.xz.js.dynamic.163data.com.cn
如果你不想正在网页上体现,仅仅想得到IP,用于其他用途,那样必要把VIH_DisplayOnPage = "yes"改成VIH_DisplayOnPage = "no"。IP变量是VIH_HostIP。
调用方法以下:
<script language="JavaScript"> VIH_DisplayOnPage = "no"; </script> <script language="JavaScript" src="http://scripts.hashemian.com/js/visitorIPHOST.js.php"></script> <script language="JavaScript"> alert("你的IP是:" + VIH_HostIP); </script>
下面给大家介绍JavaScript获取客户端IP和MAC地址
如果获取不到则需要对IE浏览器进行设置。具体设置如下:
请设置IE浏览器-工具-安全-自定义级别-ActiveX第三项‘对没有标记为安全的ActiveX控件进行初始化和脚本运行'为启用,点击确定后刷新重新登录!
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>JavaScript获取客户端IP</title> <script type="text/javascript" language="javascript"> <!-- function GetLocalIPAddress() { var obj = null; var rslt = ""; try { obj = new ActiveXObject("rcbdyctl.Setting"); rslt = obj.GetIPAddress; obj = null; } catch(e) { //异常发生 } return rslt; } function getMac(){ var locator = new ActiveXObject ("WbemScripting.SWbemLocator"); var service = locator.ConnectServer("."); var properties = service.ExecQuery("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled =True"); var e = new Enumerator (properties); { var p = e.item(); var mac = p.MACAddress; return mac } } //--> function init () { var ip = GetLocalIPAddress(); var mac = getMac(); fm.clientIP.value = ip; fm.clientMAC.value = mac; } </script> </head> <body onload="init();"> <form name = 'fm'> 通过JavaScript获取的IP信息:<input type ='text' name = 'clientIP'><br> 通过JavaScript获取的MAC信息:<input type='text'name = 'clientMAC'> 通过JSP获取的IP信息:<%= request.getRemoteAddr() %> </form> </body> </html>