如何在REST Web服务服务器端接收“Accept”标头

时间:2011-06-28 08:53:27

标签: java web-services rest request request-headers

我在java.But中编写了一个REST Web服务如果我想接收Accept : application/json标题,该怎么做?如果我想收到更多自定义标题,如“CDMI-Speciation-1.0”,怎么能我收到两个标题?

我的网络服务就是这样:

@PUT
@Consumes("application/json")
@Produces("application/json")
public vodi doPut(){.....}

我的请求应该是:curl --header "Content-Type:application/json" --header Accept:application/json" --header "CDMI-Specification-1.0" http://localhost/user -v

我所知道的是@Conusmes用于“内容类型”。是吗?

感谢

1 个答案:

答案 0 :(得分:3)

有些注释可以检索http标头,例如:

@PUT
@Consumes("application/json")
@Produces("application/json")
public void doPut(@Context HttpHeaders hh){
    .....
}

您还可以检索单个标题:

@PUT
@Consumes("application/json")
@Produces("application/json")
public void doPut(@HeaderParam("Accept") acceptHeader){
    .....
}

有关详细信息,请参阅here