【问题标题】:how to received "Accept" header in REST web service server side如何在 REST Web 服务服务器端接收“接受”标头
【发布时间】:2011-06-28 08:53:27
【问题描述】:

我已经在 java 中编写了一个 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" --headerAccept:application/json" --header "CDMI-Specification-1.0" @987654321@ -v

我知道@Conusmes 是用于“Content-Type”的。是吗?

谢谢

【问题讨论】:

  • 是的,Consumes是请求的Content-Type,Produces是请求的Accept,响应的Content-Type。

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


【解决方案1】:

有可以检索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

【讨论】:

    猜你喜欢
    • 2011-07-28
    • 2014-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-17
    相关资源
    最近更新 更多