/**
* 通过HttpServletRequest返回IP地址
* @param request HttpServletRequest
* @return ip String
* @throws Exception
* add by wgy 20180903
*/
public String getIpAddr(HttpServletRequest request) throws Exception {
String ip = request.getHeader("X-Forwarded-For");
if(StringUtils.isNotEmpty(ip) && !"unKnown".equalsIgnoreCase(ip)){
//多次反向代理后会有多个ip值,第一个ip才是真实ip
int index = ip.indexOf(",");
if(index != -1){
return ip.substring(0,index);
}else{
return ip;
}
}
ip = request.getHeader("X-Real-IP");
if(StringUtils.isNotEmpty(ip) && !"unKnown".equalsIgnoreCase(ip)){
return ip;
}
return request.getRemoteAddr();
}
参照网上的,具体网上的网址忘了,再次表示抱歉,为方便后期查阅,在此记录下,谢谢。