首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法理解使用带有graphql-ruby gem的ActionCable的GraphQL订阅

无法理解使用带有graphql-ruby gem的ActionCable的GraphQL订阅
EN

Stack Overflow用户
提问于 2018-12-24 00:12:04
回答 1查看 837关注 0票数 2

我正在尝试使用ActionCable和graphql-ruby gem实现GraphQL订阅。

我从这个link中了解到,需要创建哪些客户端需要订阅的GraphQL通道。通常,在ActionCable中,我们将在subscribed操作中stream_from所需的通道。但是,链接中的示例指定了一个带参数的execute方法。这个方法什么时候执行?

此外,doc还会声明See Apollo Client or Relay Modern以供客户端使用。必须使用其中任何一个吗?或者我可以使用coffeescript来订阅和更新UI吗?

EN

回答 1

Stack Overflow用户

发布于 2019-06-26 12:18:37

我不确定你是否已经解决了你的问题,但是对于那些理解GraphQL和ActionCable的工作原理有困难的人来说。我已经建立了一个示例存储库,并将尝试更新文档以使其更好。

https://github.com/bidluo/GraphQL-ActionCableSubscriptions

为了回答您的问题,execute与发送消息时的任何其他ActionCable操作类似,因此要调用它,您可以执行以下操作,其中data包含所有内容,而query实际上是GraphQL中唯一的一部分。

代码语言:javascript
复制
{
   "command":"message",
   "identifier":"{\"channel\":\"GraphqlChannel\"}",
   "data":"{ \"query\": \"subscription { newMessage { content } }\", \"variables\": null, \"action\": \"execute\" }"
}

但你需要确保你首先订阅了这个频道:

代码语言:javascript
复制
{
   "command":"subscribe",
   "identifier":"{\"channel\":\"GraphqlChannel\"}"
}
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53905139

复制
相关文章

相似问题

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