我可以获取Web服务功能的请求标头和响应标头吗?

时间:2014-11-27 23:53:20

标签: rest session cxf cxfrs

我正在使用Java和Apache CXF来编写AngularJS的后端(单页网站)。在我的REST服务中,我需要访问http请求的标题(即参数和cookie),我也需要访问响应头(即参数和cookie)。主要原因是安全性,身份验证和会话管理。这些都是重要的原因。

有没有办法在Apach CXF RESTfull代码中获取这两种结构?

1 个答案:

答案 0 :(得分:2)

您可以使用@Context [javax.ws.rs.core.Context]注入请求

  public Response myRest(@Context HttpServletRequest request /*, other parameters if you have like @QueryParam */ ){
    request.getCookies();
    request.getUserPrincipal();
}

您可以将响应中的Cookie或标头设置为

ResponseBuilder builder = Response.ok(); //Response.status(500) either way
builder.cookie(arg0);
builder.header(arg0, arg1);
return bulider.build();