首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何级联GraphQL?

如何级联GraphQL?
EN

Stack Overflow用户
提问于 2016-10-13 02:12:15
回答 2查看 781关注 0票数 2

我目前正在使用“客户端GraphQL服务器”将RESTful端点封装到GraphQL端点。

但是,如果服务器端也是一个GraphQL端点呢?如何在GraphQL服务器中以轻量级方式对另一个GraphQL服务器进行排队?

或者更一般地,如果我有提供微服务的GraphQL服务器"A“和"B",那么我使用GraphQL服务器"C”来集成"A“和"B”。我是否应该使用某种使用apollo客户端的“服务器端客户端”来将"A“和"B”排在"C“中?

EN

回答 2

Stack Overflow用户

发布于 2017-06-02 03:57:54

我从未见过客户端GraphQL以这种方式使用,但我想它会像往常一样工作。您的查询带有一个返回数据的解析器。在本例中,您将使用GraphQL请求而不是REST api请求,但原理是相同的。

请记住,GraphQL与其他任何应用程序接口没有太大不同。您可以将HTTP请求(对于GraphQL,所有请求都是POST)发送到一个URL端点(对于GraphQL,URL始终是相同的),并将参数数据与您的请求一起发送(对于GraphQL,这是整个查询的目的地)。

我想您可以将客户端GraphQL查询中的变量转换为服务器GraphQL查询中的变量,并以这种方式构造查询。

使用cURL,您可以使用如下格式进行查询:

代码语言:javascript
复制
$ curl -XPOST -H "Content-Type:application/graphql"  -d 'query RootQueryType { count }' http://localhost:3000/graphql

响应将如下所示:

代码语言:javascript
复制
{
  "data": {
    "count": 0
  }
}

只需使用您在客户端使用的请求库来访问REST客户端,但是修改它以匹配您试图访问的GraphQL服务器的API。

票数 1
EN

Stack Overflow用户

发布于 2017-07-19 21:38:44

实际上,我认为解析函数的工作是与你的微服务交互。有关更多信息,请查看GraphQL and Microservice Architecture

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40005554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档