繁体   English   中英

使用Java App Engine返回JSONObject

[英]return JSONObject with java app engine

我有一个云终结点函数,该函数返回json字符串作为响应。 api端点向云功能发出http请求。 我如何才能按原样返回json字符串响应。 我尝试了以下(仅作为示例)

@ApiMethod(
            name = "json",
            httpMethod = ApiMethod.HttpMethod.GET
    )
    public JsonObject json()
    {
        String item = "{\"name\":\"Josh\",\"sex\":\"male\"}";
        JsonParser jsonParser = new JsonParser();
        return jsonParser.parse(item).getAsJsonObject();

    }

我收到以下消息

WARNING: exception occurred while invoking backend method
[INFO] GCLOUD: java.io.IOException: com.fasterxml.jackson.databind.JsonMappingException: JsonObject (through reference chain: endpoints.repackaged.com.google.gson.JsonObject["asInt"]
Caused by: java.lang.UnsupportedOperationException: JsonObject

我了解JSONObject并非受支持的返回类型的一部分,我只想知道如何仅从端点输出json字符串响应即可

您可以做的是将JSON包装到String(在端点中)并返回wrapper对象。 包装对象可以是只有一个String属性的简单POJO。 然后在API使用者方面,您只需读取字符串(代表JSON)并根据需要使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM