我正在使用 node js 最新版本和 appsync 来处理 AWS 提供的实时事件。
下面是我的代码,当我在任何频道名称上推送来自突变的数据时,我没有收到任何通知。
这是我的生成器函数
const subscribe = (name, next, error) => {
console.log("call subscribe")
const subscribeDoc =
subscription Subscribe($name: String!) {
subscribe(name: $name) {
data
name
}
}
return API.graphql(graphqlOperation(subscribeDoc, { name })).subscribe({
next: ({ provider, value }) => {
next(value.data.subscribe, provider, value)
},
error: console.log,
})
}
从助手调用生成器函数
export const SubscribeHandlerStoreReplyView = async (channelName) => {
Amplify.configure(config)
const subscribeChannel = subscribe(channelName, ({ data }) => {
console.log("Inside the callback :", data)
});
console.log("subscribeChannel :",subscribeChannel)
}
我在连接应用程序同步服务器时得到的输出
subscribeChannel : Subscription {
_cleanup: [Function (anonymous)],
_observer: { next: [Function: next], error: [Function: log] },
_queue: undefined,
_state: 'ready'
}
相同的代码在使用 react js 时有效,而且我不确定为什么响应队列为空。