Java 如何获取访问您的Web服务的客户端的IP地址?

Java 如何获取访问您的Web服务的客户端的IP地址?,java,web-services,rest,jersey,Java,Web Services,Rest,Jersey,这个标题几乎说明了一切,我已经使用JAX-RS和Jersey用Java编写了一个REST Web服务,我想在代码中提取命中它的客户端的IP地址。如果我有这样一门课: @Path("/service") public class Service { @GET public void doAction () { // ... } } 从那里我该怎么办 另外,我不是在请求调试帮助,我是在询问如何检索连接到我的web服务的客户端的IP地址@ANyarTh

这个标题几乎说明了一切,我已经使用JAX-RS和Jersey用Java编写了一个REST Web服务,我想在代码中提取命中它的客户端的IP地址。如果我有这样一门课:

@Path("/service")
public class Service {

    @GET
    public void doAction () {

        // ...

    }

}
从那里我该怎么办


另外,我不是在请求调试帮助,我是在询问如何检索连接到我的web服务的客户端的IP地址@ANyarThar提供了一个很好的答案。

如何
@Context-HttpServletRequest
作为方法中的参数

@GET
public void doAction (@Context HttpServletRequest req) {
    //then get ip address
    String ipAddress = req.getRemoteHost();
}

您能在REST URL中强制使用ipAddress参数吗?您的意思是要求客户端显式输入其IP地址?不。。。遗憾的是,Jersey还不能确定,但在SpringMVC中,您可以将HTTP请求作为方法参数传递。的重复项