Java-如何在接口实现中获取http标头?

时间:2018-12-20 19:12:36

标签: java rest header postman

我正在尝试使用带接口方法的邮递员从http请求中获取x-forward-for标头。我想在实现方法中获取IP地址,但是它为null或空白。

当我使用Postman进行测试时,如果使用@Headerparam,则返回null;如果使用@RequestHeader,则返回空白。

DataService接口类:

@POST
@Path(PATH)
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
@WebMethod(operationName="submit")
@ExecutableBy(anonymous = true)
public Response submit(Data data, @RequestHeader(value = "x-forwarded-for") String ipAddr);

DataService实现:

@Override
public Response submit(Data data, String ipAddr) {
  LOG.debug("ip addr from header " + ipAddr);
  ...
}

1 个答案:

答案 0 :(得分:1)

您确定存在“ x-forwarded-for”标头吗? @HeaderParam(“ x-forwarded-for”)对我有用。