如何获取用户登陆的IP?
如题....
自己写了一个方法,测试在其他机子上登陆,结果获得的IP竟然却是自己本机(web部署pc)上的IP?
不知我下面的代码哪里错了,请指教...
public String getIp(){
log.info( "获取IP地址! ");
String ip=null;
try{
String info=InetAddress.getLocalHost().toString();
int n=info.lastIndexOf( "/ ");
ip=info.substring(n+1);
}catch(Exception e){
log.info(e.getStackTrace());
}
System.out.println( "----------- "+ip);
return ip;
}
------解决方案--------------------String ip = " ";
ip = request.getRemoteAddr();
------解决方案--------------------request.getRemoteAddr();
------解决方案--------------------request.getRemoteAddr();
开玩笑啦,我写着玩的,不要给我分了,给上面两位吧
------解决方案--------------------ip = request.getRemoteAddr();
------解决方案--------------------127.0.0.1 代表本地地址
------解决方案--------------------InetAddress.getLocalHost()运行此程序的机器ip,就是服务器了
------解决方案--------------------InetAddress.getLocalHost() 这肯定获取的是本机IP
request对象中包含有用户IP,客户端的信息都在这里面
------解决方案--------------------ding si ni