JAVA获取访问用户的客户端IP(适用于公网与局域网)

来源:互联网 发布:淘宝网天猫秋季女装 编辑:程序博客网 时间:2024/05/27 20:22

JAVA获取访问用户的客户端IP(适用于公网与局域网)

/** * 获取访问用户的客户端IP(适用于公网与局域网). */public static final String getIpAddr(final HttpServletRequest request)throws Exception {if (request == null) {throw (new Exception("getIpAddr method HttpServletRequest Object is null"));}String ipString = request.getHeader("x-forwarded-for");if (StringUtils.isBlank(ipString) || "unknown".equalsIgnoreCase(ipString)) {ipString = request.getHeader("Proxy-Client-IP");}if (StringUtils.isBlank(ipString) || "unknown".equalsIgnoreCase(ipString)) {ipString = request.getHeader("WL-Proxy-Client-IP");}if (StringUtils.isBlank(ipString) || "unknown".equalsIgnoreCase(ipString)) {ipString = request.getRemoteAddr();}// 多个路由时,取第一个非unknown的ipfinal String[] arr = ipString.split(",");for (final String str : arr) {if (!"unknown".equalsIgnoreCase(str)) {ipString = str;break;}}return ipString;}


2 0
原创粉丝点击