浏览 3626 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2006-01-23
以前获取用户 IP 使用的是 RequestCycle 的 getRequestContext() 方法 现在这个方法已经 deprecated 了, 而且注明要在 4.1 删除, 请问还有什么方法能够获得用户的 IP 吗? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2006-01-23
有多种方式,下面是其中一种:
<inject property="webRequest" object="service:tapestry.globals.WebRequest"/> this.getWebRequest();.getServerName(); |
|
返回顶楼 | |
发表时间:2006-01-23
我试了您的方法,org.apache.tapestry.web.WebRequest 并没有方法能得到用户的 IP 地址
|
|
返回顶楼 | |
发表时间:2006-01-23
Tapestry4.0正式版,我能从getServerName() 获取到IP。
|
|
返回顶楼 | |
发表时间:2006-01-23
谢谢您的帮忙,不过getServerName() 返回的是本地服务器的名称,我需要的是用户的IP地址
|
|
返回顶楼 | |
发表时间:2006-01-24
不好意思,我一直在内网开发,也没有仔细留意区别,你用下面的方式来获取吧:
<inject property="servletRequest" object="service:tapestry.globals.HttpServletRequest"/> public abstract HttpServletRequest getServletRequest();; this.getServletRequest();.getRemoteAddr(); 这样肯定没有问题了。 |
|
返回顶楼 | |
发表时间:2006-01-24
搞定了,谢谢,不知您有没有时间写一个 tapestry 内置服务的文档,造福一下大众啊
|
|
返回顶楼 | |