【发布时间】:2016-12-24 08:45:56
【问题描述】:
我正在尝试使用 ActionCable 作为 GraphQL 查询的传输 (graphql-streaming)。 GraphQL 查询是对数据的任意请求,因此我不想每次查询使用一根电缆,而是希望使用一根电缆并通过该电缆多路复用查询。流程可能是这样的:
- 连接到 ActionCable
- 订阅 GraphQL 查询
- 推送查询结果
- 应用发生变化,推送另一个查询结果
- 用户更改页面,我们应该取消订阅该查询
我将订阅事件实现为流,所以订阅看起来像这样:
stream_from(event_name) { evaluate_graphql_and_push }
但是当用户更改页面时,我想保持频道连接但停止从该事件流式传输。
ActionCable 可以做到这一点吗?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-5 actioncable