/** * Purpose:获取ip * @author Hermanwang * @param request * @return * @throws Exception * @return String */ public static String getClientIP(ServletRequest request) throws Exception{ //通過代理軟件無法獲取真實IP,所以先取得Header,判斷是否有用代理 String[] httpHeaders = new String[]{"x-forwarded-for", "Proxy-Client-clientIP", "WL-Proxy-Client-clientIP"}; String clientIP = null; try { for (int i = 0; i < httpHeaders.length; i++) { clientIP = ((HttpServletRequest) request).getHeader(httpHeaders[i]); if(StringUtils.hasText(clientIP) && !clientIP.equalsIgnoreCase("unknown")){ break; } } if(!StringUtils.hasText(clientIP) || clientIP.equalsIgnoreCase("unknown")) { clientIP = request.getRemoteAddr(); } }catch (Exception e) { throw e; } return clientIP; }
java 获取ip
最新推荐文章于 2024-04-03 08:00:00 发布