当前位置:  开发笔记 > 后端 > 正文

如何在Grails控制器中获取客户端IP地址?

如何解决《如何在Grails控制器中获取客户端IP地址?》经验,为你挑选了1个好方法。

我在Ruby中有这样的代码:

@clientipaddress = request.env["HTTP_CLIENT_IP"]
if (@clientipaddress == nil)
  @clientipaddress = request.env["HTTP_X_FORWARDED_FOR"]
end
if (@clientipaddress == nil)
  @clientipaddress = request.env["REMOTE_ADDR"]
end
if (@clientipaddress != nil)
  comma = @clientipaddress.index(",")
  if (comma != nil && comma >= 0)
    @clientipaddress = @clientipaddress[0, comma]
  end
end

它处理了知识产权可能出现的所有可能方式.例如,在我的本地开发机器上,没有代理.但在QA和Production中,代理存在,有时它们提供多个地址.

我不需要知道Groovy语法,只是哪种方法让我相当于我要求上面的IP的三种不同方式.



1> Michael Borg..:

我认为这应该是你想要的:

request.getRemoteAddr()

request.getHeader("X-Forwarded-For")

request.getHeader("Client-IP")

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有