首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

java 获取客户端IP解决办法

2013-01-11 
java 获取客户端IP在服务器端获得客户端ip怎么获得我知道一个 方法request.getRemoteAddr() 可是我不知道

java 获取客户端IP
在服务器端获得客户端ip怎么获得
我知道一个 方法request.getRemoteAddr() 
可是我不知道 request 从哪里加进来 
有没知道的 

写在普通类里


有没谁知道啊 
或者有没谁有其他方法啊! 急啊!!!!!1
[解决办法]


/**
 * 
 */
package com.ccit.ejtg.util;

import javax.servlet.http.HttpServletRequest;

/**
 * @描述 获得IP4
 * @author XYY
 * @time 2010-3-22上午09:06:14
 * @version 1.0
 * @类名 IP4.java
 */
public class IP4 {

    public static String getIP4(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.getRemoteAddr();
        }
        return ip;

    }
}


[解决办法]
楼上的说得漏了好几种情况,某些情况下还是获取的不正确,我下面的比较全几乎涵盖了所有的客户端形式,完全可以使用

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;
}
[解决办法]

引用:
楼上的说得漏了好几种情况,某些情况下还是获取的不正确,我下面的比较全几乎涵盖了所有的客户端形式,完全可以使用

public static String getIpAddr(HttpServletRequest request) {
String ip = request.getHeader("X-Forwarded-For");
if (ip == null 
[解决办法]
 ip.length()……


学习了   谢谢 兄弟
[解决办法]
引用:
如果是jsp直接用request,如果是servlet,用HttpServletRequest request

request是从客户端来的

热点排行