[英]request.getRemoteAddr() return server ip
@RequestMapping(value = "/origin/test/", method = RequestMethod.GET, headers = "Accept=application/json")
public String getTest(@Context HttpServletRequest request) {
String Text = "Version - " + org.hibernate.Version.getVersionString();
return Text+request.getRemoteAddr()+"----"+request.getLocalAddr();
}
在上面的代码中,在服务器中运行时,它返回服务器ip作为远程地址和本地地址。 但是,当我以本地主机身份运行时,我已经向其他笔记本电脑发出了请求,它会正确返回该笔记本电脑的IP。 但是问题是服务器没有返回发出请求的笔记本电脑的IP。
请使用request.getRemoteAddr()再次更新
@RequestMapping(value = "/origin/test/", method = RequestMethod.GET, headers = "Accept=application/json")
public String getTest(@Context HttpServletRequest request) {
String Text = "Version - " + org.hibernate.Version.getVersionString();
return Text+request.getRemoteAddr()+"----"+request.getRemoteAddr();
}
如果客户端在任何代理后面,则getRemoteAddr()
会引起麻烦,然后您将获得代理的IP地址
当客户端使用DHCP时,IP地址可以并且将在会话期间更改。
getRemoteAddr():返回发送请求的客户端或最后一个代理的Internet协议(IP)地址。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.