JavaDropWizard:从同一个类生成html和json
有没有办法从客户端控制输出格式
我有一节课
@Produces(MediaType.TEXT_HTML)
我希望它在客户端请求时生成json
我可以逐字复制类,只替换@Path,@生成注释,但这看起来完全是浪费
我想知道客户端是否可以附加类似的内容&;content type=application/json到URL,让我的服务器用json而不是html响应
你可以在下面搜索框中键入要查询的问题!
有没有办法从客户端控制输出格式
我有一节课
@Produces(MediaType.TEXT_HTML)
我希望它在客户端请求时生成json
我可以逐字复制类,只替换@Path,@生成注释,但这看起来完全是浪费
我想知道客户端是否可以附加类似的内容&;content type=application/json到URL,让我的服务器用json而不是html响应
# 1 楼答案
您需要将资源注释为同时提供HTML和JSON:
然后确保注册了
MessageBodyWriter
实现来处理方法的返回类型。Dropwizard的JacksonMessageBodyProvider
应该处理JSON;如果您使用的是Dropwizard视图,ViewMessageBodyWriter
应该处理其余部分。Jersey将与客户机进行内容协商,前提是您的客户机在请求的Accept
头中有application/json