【发布时间】:2021-08-06 05:51:33
【问题描述】:
我已将https://github.com/apollographql/apollo-server 集成到 NextJS api 中。几乎所有东西都按预期工作,除了订阅。 我设置了一个非常简单的订阅如下:
type Subscription {
counter: Int!
}
解析器:
const Subscription: SubscriptionResolvers = {
counter: {
subscribe: (parent, args, ctx: Services) => {
let count = 0
setTimeout(() => {
count++
ctx.pubSub.publish("COUNTER", count)
}, 500);
return ctx.pubSub.asyncIterator("COUNTER");
}
}
}
export {Subscription as default}
export const resolvers: Resolvers = {
Query: {
greet: (parent, args) => {
return `Hello ${args.name}`;
}
},
Subscription: Subscription
};
运行订阅,我得到了:
我做错了什么?代码托管在https://github.com/softshipper/next-sub。
【问题讨论】: