gpt4 book ai didi

java - 根据 Accept header 值指定 Jersey 资源处理程序

转载 作者:太空宇宙 更新时间:2023-11-04 14:39:39 28 4
gpt4 key购买 nike

我希望有不同的函数根据 Accept header 处理对特定资源的请求。具体来说,如果存在 Accept header ,则应调用返回 application/json 内容类型的函数,否则,如果不存在 Accept header ,则应调用返回文本/纯内容的不同函数。有没有办法用 Jersey 注释来做到这一点?

顺便说一句,这是在 dropwizard json Web 服务的上下文中。

最佳答案

我也遇到了同样的问题(这就是我来这里的原因)。关于 @Produces 的提示解决了问题:

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Path("/Test")
@Produces(MediaType.TEXT_HTML)
public class TestResource {
@GET
@Path("/test")
@Produces(MediaType.APPLICATION_JSON)
public String json() {
return "{\"hello\": \"world\"}";
}

@GET
@Path("/test")
@Produces(MediaType.APPLICATION_XML)
public String xml() {
return "<hello>World</hello>";
}

@GET
@Path("/test")
public String html() {
return "<html>Hello world</html>";
}
}

调用“/Test/test”服务现在会根据“Accept” header 给出不同的结果。

关于java - 根据 Accept header 值指定 Jersey 资源处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25090181/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com