繁体   English   中英

request.getRemoteAddr()返回服务器IP

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM