2013年4月16日 星期二

在 JAX-RS 中取得 Header 資訊

在 JAX-RS(Jersey)的環境中,取得 HTTP Request 的 Header 還蠻容易的,可以參考 [1],有兩種方法。
因為沒有特別需要修改的地方,所以以下的範例程式碼基本上是直接從 [1] 複製過來。

方法 1:
@GET
@Path("/get")
public Response addUser(@HeaderParam("user-agent") String userAgent) {
  return Response.status(200)
    .entity("addUser is called, userAgent : " + userAgent)
    .build();
}

方法 2:
@GET
@Path("/get")
public Response addUser(@Context HttpHeaders headers) {
  String userAgent = headers.getRequestHeader("user-agent").get(0);
  return Response.status(200)
    .entity("addUser is called, userAgent : " + userAgent)
    .build();
}

參考資料:
1、Get HTTP Header In JAX-RS

沒有留言: