/**
http工具类
*/
public class HttpUtils {
/**
获取请求ip
@param request
@return
*/
public static String getIP(HttpServletRequest request){
String ip = request.getRemoteAddr();
String headerIP = request.getHeader(“x-real-ip”);
if(headerIP == null || “”.equals(headerIP) || “null”.equals(headerIP)){
headerIP = request.getHeader(“x-forwarded-for”);
}
System.out.println(“headerIP:”+headerIP);
if(headerIP !=null && !“”.equals(headerIP) && !“null”.equals(headerIP)){
ip = headerIP;
}
return ip;
}
/**
获取真实的ip
@param request
@return
@throws UnknownHostException
*/
public static String getRealIp(HttpServletRequest request){
String ip;
// 有的user可能使用代理,为处理用户使用代理的情况,使用x-forwarded-for
if (request.getHeader(“x-forwarded-for”) == null) {
ip = request.getRemoteAddr();
} else {
ip = request.getHeader(“x-forwarded-for”);
}
if (“127.0.0.1”.equals(ip)) {
try {
// 获取本机真正的ip地址
ip = InetAddress.getLocalHost().getHostAddress();
}catch (Exception e){
e.printStackTrace();
}
}
return ip;
}
}
java获取请求的真实ip
最新推荐文章于 2024-05-25 20:50:13 发布