Rest Client - 如何将JSONObject作为响应?

时间:2012-09-13 14:22:34

标签: android json gson resttemplate android-annotations


我正在关注此指南 - https://github.com/excilys/androidannotations/wiki/Rest%20API,我正在尝试跳过JSON< - > POJO转换并处理纯JSONObject(或gson的JsonObject)。我应该写什么作为服务器的答案?

@Rest("url")
public interface JsonRest
{
    @Get("/getjson")
    JSONObject getTime();
        // or... ? 
    @Get("/getjson")
    ResponseEntity<JSONObject> getTime();
        // or... ? 
    @Get("/getjson")
    JsonObject getTime();  
}

在所有情况下,我都会得到"{}"作为回复,但它在POJO转换后包含正确的数据。我应该提供哪个HTTPMessageConverter

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

只需将GsonHttpMessageConverter添加到RestTemplate并尝试:

@Get("/getjson")
JsonElement getSomething();

答案 1 :(得分:1)

默认情况下,我认为Spring Android RestTemplate不支持此功能。您应该提供自己的提供商。

您可以查看GsonHttpMessageConverter的实施方式here,然后根据该解决方案实施您自己的解决方案。