ZK & Struts2取得真实 IP 地址
ZK & Struts2获得真实 IP 地址
/** * 得到真实的IP地址 * @param request * @return */ public String getIpAddr() { HttpServletRequest request = null; if(Sessions.getCurrent() != null){//ZK获得Request ServletContext sc = (ServletContext) Sessions.getCurrent().getWebApp().getNativeContext(); request = (HttpServletRequest) Executions.getCurrent().getNativeRequest(); }else{//Struts2获得Request request = ServletActionContext.getRequest(); } String ip = request.getHeader("x-forwarded-for"); if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("Proxy-Client-IP"); } if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("WL-Proxy-Client-IP"); } if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getRemoteAddr(); } return ip; }