3

我无法使用 RestyGWT 接收纯文本。一个非常简单的测试服务如下所示:

@GET
@Consumes(MediaType.TEXT_PLAIN)
@Produces(MediaType.TEXT_PLAIN)
void test(MethodCallback<String> callback);

在客户端,我总是得到:

Response was NOT a valid JSON document

查看 HTTP 响应,我发现内容类型设置正确:

Content-Type:text/plain

有什么问题?为什么 RestyGWT 试图将其解析为 JSON?我做错了吗?

4

2 回答 2

4

如果您将使用TextCallback而不是MethodCallback<String>您将不会收到此错误。它会Accept自动将 header 设置为text/plain,因此您不必@Produces在异步界面中使用 adnotation。

于 2014-11-24T09:52:32.727 回答
2

好吧,RestyGWT 是一个 Json 库,AFAIK 它不是用来处理纯文本、XML 或其他任何东西的。"foo"不是有效的 Json 数据,应该是["foo"]or {"stuff": "foo"}

事实上,在我们的 Rest API 中,我们尝试发送纯文本(一个 id),但我们最终制作了一个简单的对象来包装 id。

于 2014-08-01T22:20:27.713 回答