【发布时间】:2020-08-12 10:48:09
【问题描述】:
我正在尝试将 ID 等输入参数传递给 GQL 订阅。 我正在与:
const { PubSub } =require ('apollo-server');
这是apollo subscription reference page
基本上我正在尝试使用这个简单的订阅 typedef:
type Subscription{
subscribe_device(id: String!): device}
这是我的订阅解析器:
Subscription:{
subscribe_device:(parent, args, context, info) =>{
console.log(args)
subscribe: () => pubsub.asyncIterator('stream')
}
}
实际上没有输入参数它工作得很好,但在这种情况下它似乎与 asyncIterator 有问题
没有输入参数:
Subscription:{
subscribe_device:{
subscribe: () => pubsub.asyncIterator('stream'),
}
}
有人知道如何解决这个问题吗?如何在订阅中输入一些参数? 我需要它来动态创建不同的“流”
非常感谢您的帮助
【问题讨论】:
-
是的,我已经按照文档中的报告使用 withFilter 进行了尝试,但问题是它只允许检查某些内容。例如,我可以检查我的 ID。我的意图是先创建由作为输入参数传递的设备 ID 标识的单独流,而不是检查我是否应该接收它。
-
你知道有没有可能?
标签: node.js graphql apollo subscription apollo-server