我正在使用grails,我想找到会话用户的公共IP,以便我可以找到位置国家。
我正在使用:
InetAddress.getLocalHost().getHostAddress()
获取IP,但问题是它给了我私有IP,即192.168.X.X这是没用的。
提前完成
答案 0 :(得分:6)
你只需要使用
InetAdress.getHostAddress()
但您可以使用该请求吗?
request.getRemoteAddr()
在会话中,您也可以使用
String ipAddr = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes())
.getRequest().getRemoteAddr();