【发布时间】:2018-02-15 17:24:02
【问题描述】:
我在 v2.0.3 的节点平台上使用 socket.io。
以下代码在一周前工作
socket.broadcast.to(msg.receiverID).emit('new message', { "username": msg.username, "message": msg.message, "to": msg.to, "receiverName": msg.receiverName, "senderName": msg.senderName, "dateTime": data.created });
它正在工作并将消息发送到单个receiverID。但现在即使我没有修改以前的代码,它也不起作用。但我们发现解决方案之一是尝试 io 对象发出消息,如下所述:
io.to(msg.to).emit('new message', { "username": msg.username, "message": msg.message, "to": msg.to, "receiverName": msg.receiverName, "senderName": msg.senderName ,"dateTime":data.created});
为什么这个冲突是 socket.broadcast.to() 在 io.to() 中被贬低或未使用。
【问题讨论】:
-
也许你需要更新节点版本,是的,“io.to”也可以,socket.io/docs/emit-cheatsheet/#