java - 在 Rest 服务中返回纯字符串不返回 json?

标签 java rest

我在基于休息的网络服务中创建了以下休息方法

@GET
@Produces("application/json")
@Path("plain")
public String getPlain()
{
    return "hello world";
}

@GET
@Produces("application/json")
@Path("wrapper")
public Response getWrapper()
{
    return Response.ok(new Object(){ public String data = "hello world";}).build();
}

当我调用普通服务时,它返回原始字符串 hello world 而不是 JSON 格式的输出。但是,将字符串包装在对象中会返回 JSON {"data":"hello world"}

为什么会出现这样的行为?如何将纯字符串作为 JSON 发送?

最佳答案

我认为这些会满足您的需求。

@GET
@Produces("application/json")
@Path("plain")
public String getPlain()
{
return JSONObject.quote("Hello World");
}

@GET
@Produces("application/json")
@Path("plain")
public String getPlain()
{
return "\"Hello World\"";
}

@GET
@Produces("application/json")
@Path("plain")
public char[] getPlain()
{
return "Hello World!".toCharArray();
}

关于java - 在 Rest 服务中返回纯字符串不返回 json?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12535870/

相关文章:

java - 类型 "x"中的方法 search() 不适用于参数(字符串)

java - Tomcat 未处理 jSTL ${}

rest - XPages REST 服务和与外部系统的身份验证

angular - 下拉列表不会填充 Angular 中的 API 数据

java - 避免同时执行两次 Spring @Async 任务

Java : When to skip null checks on an object?

具有多个可以在线程中执行的方法的 Java 类

asp.net-mvc - 选择哪个:ASP.NET MVC或RESTful WCF?

java - 如何在CXF中使用PATCH方法

xml - 自定义媒体类型是否需要 XML 声明?