获取请求端的ip地址

获取请求端的ip地址:

public static String getIp(HttpServletRequest request) {
    String ip = request.getHeader("X-Forwarded-For");
    String unKnownIp = "unKnown";
    if (StringUtils.isNotEmpty(ip) && !unKnownIp.equalsIgnoreCase(ip)) {
      // 多次反向代理后会有多个ip值,第一个ip才是真实ip
      int index = ip.indexOf(",");
      if (index != -1) {
        ip = ip.substring(0, index);
        return ip;
      } else {
        return ip;
      }
    }
    ip = request.getHeader("X-Real-IP");
    if (StringUtils.isNotEmpty(ip) && !unKnownIp.equalsIgnoreCase(ip)) {
      return ip;
    }
    return request.getRemoteAddr();
  }
原文地址:https://www.cnblogs.com/xingxing0521/p/5842957.html