使用jersey jersey.java.net如果URI中没有accept标头或.xml后缀,如何将JSON设置为默认序列化而不是XML?
答案 0 :(得分:15)
您可以在@Produces注释中为每种媒体类型指定质量索引。即,如果允许XML和JSON,则可以执行以下操作以使Jersey更喜欢JSON:
@Produces({"application/json;qs=1", "application/xml;qs=.5"})
答案 1 :(得分:1)
您应该能够设置@Produces
注释以指定返回格式,如下所示:
@Produces( { "application/json" })
怎么没有接受标题?
答案 2 :(得分:-2)
您可以通过在@Produces注释中按优先顺序指定媒体类型来指定生成偏好。
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
在上面的代码中,因为“application / json”首先出现,如果请求中没有指定accept头,则Jersey将默认生成JSON响应。
使用qs(由Martin建议)使偏好更加明确,但理解起来要复杂一些。