Node.js 使用Getstream获取所有通道
我正在尝试获取用户的所有频道(该用户是其成员的频道)。所以,我知道了这一点:Node.js 使用Getstream获取所有通道,node.js,chat,messaging,channel,getstream-io,Node.js,Chat,Messaging,Channel,Getstream Io,我正在尝试获取用户的所有频道(该用户是其成员的频道)。所以,我知道了这一点: const filter = { type: 'messaging', members: { $in: [`${req.body.id}`] }, }; const sort = { last_message_at: -1 }; const channelList = await client.queryCh
const filter = {
type: 'messaging',
members: { $in: [`${req.body.id}`] },
};
const sort = { last_message_at: -1 };
const channelList = await client.queryChannels(filter, sort, {
watch: true,
state: true,
});
,通过将当前用户id作为req.body.id.I发送,我为其创建了一个单独的函数。当用户进入该页面时,我需要调用该函数。但当我这样做的时候,我得到了这个错误作为回应:
StreamChat错误代码4:QueryChannel失败,错误为:“监视或状态需要活动的websocket连接,请确保包含您的websocket连接\u id”
请说明我在完成此任务时是否做错了什么,或者我在这里做错了什么。看起来您正在向
queryChannels
发送watch:true
,但setUser
未被调用或尚未完成
要解决此问题:调用
wait client.setUser({id})
并在queryChannels
之前等待它的完成(因此等待),您需要在client
上调用connect
,它将通过setUser
将您带到设置用户,因为您希望频道事件具有watch:true
。