zoukankan      html  css  js  c++  java
  • java 获取用户真实ip

    /**
             * 获取用户真实ip
             * @param request
             * @return
             */
            public static 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;
            }


    public static String getIpAddr(HttpServletRequest request) {
    String ip = request.getHeader("X-Forwarded-For");

    if (logger.isInfoEnabled()) {
    logger.info("###getIpAddress(HttpServletRequest) - X-Forwarded-For - String ip=" + ip);
    }

    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    ip = request.getHeader("Proxy-Client-IP");
    if (logger.isInfoEnabled()) {
    logger.info("###getIpAddress(HttpServletRequest) - Proxy-Client-IP - String ip=" + ip);
    }
    }
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    ip = request.getHeader("WL-Proxy-Client-IP");
    if (logger.isInfoEnabled()) {
    logger.info("###getIpAddress(HttpServletRequest) - WL-Proxy-Client-IP - String ip=" + ip);
    }
    }
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    ip = request.getHeader("HTTP_CLIENT_IP");
    if (logger.isInfoEnabled()) {
    logger.info("###getIpAddress(HttpServletRequest) - HTTP_CLIENT_IP - String ip=" + ip);
    }
    }
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    ip = request.getHeader("HTTP_X_FORWARDED_FOR");
    if (logger.isInfoEnabled()) {
    logger.info("###getIpAddress(HttpServletRequest) - HTTP_X_FORWARDED_FOR - String ip=" + ip);
    }
    }
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    ip = request.getRemoteAddr();
    if (logger.isInfoEnabled()) {
    logger.info("###getIpAddress(HttpServletRequest) - getRemoteAddr - String ip=" + ip);
    }
    }
    } else if (ip.length() > 15) {
    String[] ips = ip.split(",");
    for (int index = 0; index < ips.length; index++) {
    String strIp = (String) ips[index];
    if (!("unknown".equalsIgnoreCase(strIp))) {
    ip = strIp;
    break;
    }
    }
    }
    logger.info("####解析请求的浏览器IP:"+ip);
    return ip;
    }
     
  • 相关阅读:
    Ajax技术
    java web中filter分析
    Async分析
    解释session
    XML相关知识
    开学第一课
    svn
    spa单页面应用(angular)
    angular
    webpack认识
  • 原文地址:https://www.cnblogs.com/sagech/p/5165587.html
Copyright © 2011-2022 走看看