public static String getIpAddr(HttpServletRequest request) { 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.getHeader("Cdn-Src-Ip"); } if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getRemoteAddr(); } return ip; } 如果是要获得本机的IP的话可以通过: InetAddress.getLocalHost().toString()获得
public String getClientIP(HttpServletRequest request){ String ip = request.getHeader("x-real-ip"); if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("x-forwarded-for"); if(ip != null) { ip=ip.split(",")[0].trim(); } } 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; }
相关推荐
41、HttpServletRequest 接口所提供的方法 42、 网上测验 43、HttpSession - session 对象 44、 多选型列表框 45、解决浏览器 cache 的问题 46、使用 EL、JSTL 处理表单数据 47、 EL隐含对象 param、paramValues 48...
41、HttpServletRequest 接口所提供的方法 42、 网上测验 43、HttpSession - session 对象 44、 多选型列表框 45、解决浏览器 cache 的问题 46、使用 EL、JSTL 处理表单数据 47、 EL隐含对象 param、paramValues 48...
此外,`request`对象还提供了其他方法,例如`getRemoteAddr()`用于获取客户端的IP地址,`getRequestURI()`用于获取请求的URI等。 ##### 6.2.2 `response`对象 `response`对象用于处理JSP生成的响应,即将数据发送...
- `getAttribute(String name)`:根据name获取属性值,若不存在则返回null。 - `removeAttribute(String name)`:移除名为name的属性。 2. **请求参数操作** - `getParameter(String name)`:获取名为name的参数...
一个 TCP/IP 连接 B.一个物理连接 C.客户机和 Web 服务器之间的一组交互 D. Http 请求 - **正确答案**: C. 客户机和 Web 服务器之间的一组交互 - **解析**: 会话是指客户机和 Web 服务器之间的交互过程,它可能...