当前位置:编程学习 > JAVA >>

jquery中获取客户端ip

在网上查到都是浏览器限制的,要么就是需要用其他网站的接口,那样依耐性太强了,有没有直接可以在前台获取ip的,
而且需要说的是我的服务器是有代理服务器的,我要获取的是本地局域网所对应外网ip --------------------编程问答-------------------- 浏览器获取IP的,基本上要靠ActiveX,而且价值不大,因为你最后往往得到的是:192.168.x.x

基本上还是要从服务器端才能得到目标主机的公网IP。

由于你用了反向代理,所以要去HTTP-HEAD中查找,类似:

public String getIpAddr(HttpServletRequest request) {      
      String ip = request.getHeader("x-forwarded-for");      
      if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {      
         ip = request.getHeader("Proxy-Client-IP");      
     }      
      if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {      
         ip = request.getHeader("WL-Proxy-Client-IP");      
      }      
     if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {      
          ip = request.getRemoteAddr();      
     }      
     return ip;      
 

当然,如果你的反向代理服务器没有增加这个信息,那就没戏了,需要修改反向代理服务器配置。 --------------------编程问答-------------------- 还是不对呀,获取的代理服务器的ip呀 --------------------编程问答-------------------- 根本没法获取。  建议从服务器取 这个ip。 然后传到客户端。
补充:Java ,  Java相关
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,