我有两条路径:
@Path("Rectangle")
@GET
@Produces("application/xml")
@Consumes("application/xml")
和,
@Path("Rectangle")
@GET
@Produces("application/json")
@Consumes("application/xml")
当我在localhost上点击我的API时,我总是得到XML响应。我需要做什么才能获得相同@Path
的JSON响应?
答案 0 :(得分:4)
根据docs,您可以为同一个终点指定多个内容类型
@Produces({"application/xml", "application/json"})
并且基于请求标头Accept
,响应将具有最接受的内容类型
所以,你需要一个方法,它看起来应该是这样的
@Path("Rectangle")
@GET
@Produces({"application/xml", "application/json"})
@Consumes("application/xml")
现在客户端需要使用他们想要接收的内容类型发送标头Accept
,例如:
Accept: application/xml
这将导致响应标头“content-type”为content-type: application/xml
您还可以使用Accept
标头格式化您的回复