1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > java 标注 json_java – 注释资源以生成JSON 但在响应头中返回“text/plain”

java 标注 json_java – 注释资源以生成JSON 但在响应头中返回“text/plain”

时间:2020-05-11 02:01:44

相关推荐

java 标注 json_java  – 注释资源以生成JSON 但在响应头中返回“text/plain”

嗯,你指的链接说只有REQUESTS才是真的.

因此,您只能接受纯文本,但可以随意生成您想要的内容.

编辑尝试使用类似的代码注册自定义responsefilter(也许你已经做过了吗?):

@Provider

public class HeaderRewriteFilter implements ContainerResponseFilter {

@Override

public ContainerResponse filter(ContainerRequest request,ContainerResponse response) {

response.setResponse(Response

.fromResponse(response.getResponse()).header(HttpHeaders.CONTENT_TYPE,"text/plain").build());

return response;

}

}

但是,检查结果以确保响应已包含此标头即可.

否则你可以尝试修改当前的响应,但我不确定你可以,因为它可能是一个不可变的对象.顺便说一句,它看起来不那么干净:)

List

另外,对于json<> java数据库,您可以查看Genson库/p/genson/,它与Jersey完美集成.只需将jar放入类路径中即可运行!

编辑2确定然后你必须以另一种方式做,使用生成“text / plain”并为该类型定义一个json bodywriter.缺点是你只能生产json.使用Genson你可以这样做:

@Provider

@Produces({ MediaType.TEXT_PLAIN })

public class PlainTextJsonConverter extends GensonJsonConverter {

public GensonJsonConverter() {

super();

}

public GensonJsonConverter(@javax.ws.rs.core.Context Providers providers) {

super(providers);

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。