java – 在GWT和Google App Engine中获取客户端的IP地址

前端之家收集整理的这篇文章主要介绍了java – 在GWT和Google App Engine中获取客户端的IP地址前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要在GWT / GAE( Java)应用程序中捕获客户端的IP地址.由于GAE不支持全套java.net API,因此我无法执行下面的代码代码.任何人都可以提出可靠的方法来达到同样的目
for (final Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {
    final NetworkInterface intf = en.nextElement();
    for (final Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {
        final InetAddress ip = enumIpAddr.nextElement();
        if (!ip.isLoopbackAddress() && !ip.isLinkLocalAddress() && !ip.isAnyLocalAddress()) {
                return ip.getHostAddress().toString();
        }
    }
}

对于Python版本,我们可以:

os.environ['REMOTE_ADDR']

要么

String ip = self.request.remote_addr;

但是什么是Java等价物?

解决方法

好的,我知道了.在应该扩展RemoteServiceServlet的Servlet中执行以下操作:
final String ip = getThreadLocalRequest().getRemoteAddr();

猜你在找的Java相关文章