如何使用Moshi模型对象构建GraphQL请求

时间:2019-08-15 13:05:16

标签: java json moshi

我当前的项目使用GraphQL。

我希望将Moshi作为Json解析器进行调查,但是在生成GraphQL响应json时遇到了困难

这是我需要的Json Request消息格式:

{
    "operationName": "androidMyQuery",
    "query": "query androidMyQuery .......",
    "variables": {
            "foo": 400,
            "bar": 200,
            "baz": "1970-01-01T00:00:00.000Z"
    }
}

这是Moshi产生的:-

{
    "operationName": "androidMyQuery",
    "query": "query androidMyQuery .......",
    "variables": {
        "variables": {
            "foo": 400,
            "bar": 200,
            "baz": "1970-01-01T00:00:00.000Z"
        }
    }
}

我的Java模型类类似于:-

public class GraphqlRequest {

    @Json(name = "operationName")
    private String operationName;

    @Json(name = "variables")
    private Variables variables;

    @Json(name = "query")
    private String query;

}

还有

public class Variables {

    private Map<String, Object> variables = new HashMap<>();

    public Map<String, Object> getVariables() {
        return this.variables;
    }

    public void setVariable(final String name, final Object value) {
        this.variables.put(name, value);
    }
}

如何实现所需的结果并使模型类别保持在上方?

0 个答案:

没有答案