如何发送干净的GraphQL请求

时间:2017-03-30 16:20:49

标签: graphql url-encoding

我是GraphQL的新手。我已经创建了一个工作模式实现,但我的问题是让我的API开发人员友好。如果用户想要发送下面的查询,那么要求他们将其压缩到一行,删除空格,然后将其编码为适合查询参数甚至json编码它似乎非常麻烦。总的来说,我知道这比REST更容易,所以我认为我一定做错了。

问题

将以下GrapqhQL查询转换为可通过互联网传输的格式有哪些有效方法?

 search(firstName:"bob",lastName:"Smith", num: 0, max: 10)
    {
        age, 
        height,
        email,
        country,
        occupation
    }

问题

Graphql网站上的文档始终引用{age}等查询的最简单用例。但到目前为止,当谈到真正的查询时,这似乎比REST更难。

1 个答案:

答案 0 :(得分:0)

您的GraphQL语法错误。这就是为什么它不被编码。如果您的语法是正确的,那么您需要做的就是将整个String推送到URL / URI编码器中。下面是修正后的语法,你缺少括号。

{
 search(firstName:"bob",lastName:"Smith", num: 0, max: 10)
    {
        age, 
        height,
        email,
        country,
        occupation
    }
}

以下是一些附加文档,底部有一些示例 http://dev.apollodata.com/tools/graphql-server/requests.html