jsp如何获得客户端的IP地址?
[code="java"]
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("HTTP_CLIENT_IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_X_FORWARDED_FOR");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
return ip;
}
[/code]
request.getRemoteAddr
主要是 request.getRemoteAddr();
可以参考
[url]http://training.tsinghua.edu.cn/html/jishuyuandi/2009/0302/48.html[/url]
[url]http://struts2.group.iteye.com/group/topic/13362[/url]
调用ServletRequest 接口方法
request.getremoteaddr():获得客户端的ip地址
request.getRemoteAddr()
看看各个webserver的API文档说明,一般都有自带的,resin和tomcat都有
<%!public String getRemortIP(HttpServletRequest request) {
if (request.getHeader("x-forwarded-for") == null) {
return request.getRemoteAddr();
}
return request.getHeader("x-forwarded-for");
}%>
这段先贴JSP里
然后再表单里
你照这个类似做吧