Java 如何从ContainerRequestContext 2.1获取IP?
我的代码是:Java 如何从ContainerRequestContext 2.1获取IP?,java,request,jersey,ip,Java,Request,Jersey,Ip,我的代码是: public void filter(ContainerRequestContext request) throws IOException { // can I get Ip from request????? } 如何从请求获取ip地址?根据此票据,基于此,他们添加了对将HttpServletRequest注入您的过滤器的支持,来自上述JIRA的代码片段如下所示: public class MyRequestFilter implements Containe
public void filter(ContainerRequestContext request) throws IOException
{
// can I get Ip from request?????
}
如何从请求
获取ip地址?根据此票据,基于此,他们添加了对将HttpServletRequest
注入您的过滤器的支持,来自上述JIRA的代码片段如下所示:
public class MyRequestFilter implements ContainerRequestFilter {
@Context
private HttpServletRequest servletRequest;
然后,您可以使用HttpServletRequest
API获取远程IP,请参阅完整摘录:
getRemoteAddr
java.lang.String getRemoteAddr()
返回发送请求的客户端或最后一个代理的Internet协议(IP)地址。对于HTTP servlet,与CGI变量REMOTE\u ADDR的值相同
返回:
包含发送请求的客户端的IP地址的字符串
没有为我工作:(我有以下错误:
java.lang.IllegalArgumentException:在scope org.glassfish.jersey.process.internal.requestScope中尝试为javax.servlet.http.HttpServletRequest创建代理时发生错误
My servlet为空,因此我无法获取远程IP。还有谁拥有sa我的问题?这是我们面临的同一个问题。对此有任何更新吗?Jersey 2.0的哪个版本可以工作?2.25.1
对我不起作用。此外,JIRA票证链接已断开。