在通常情况下,方法
ServletRequest.getRemoteAddr()(或
getRemoteHost()和
getRemotePort())应返回实际客户的详细信息。但是,如果它是通过代理或其他servlet引擎路由的,您将获得这些机器的IP。为了解决这些情况,您可以尝试以下操作
request.getHeader("VIA") --> Gateway request.getHeader("X-FORWARDED-FOR")--> IPaddress但是,如果请求直接来自客户端,则此方法可能返回null。您可以通过一些其他条件来处理这种情况以获取有效数据。



