我对 socket io 很困惑,我应该如何发送私人消息
方法一
socket.emit(`privateMessage:${req.user._id}`, 'someones Private message to User')
Run Code Online (Sandbox Code Playgroud)
并且在客户端我收到此消息与用户 ID
方法二
socket.to(socketID).emit(`privateMessage`, 'someones Private message to User')
Run Code Online (Sandbox Code Playgroud)
我不知道哪种标准方法可以做到这一点,我也在使用 redis pub sub。我很困惑如何将这些捆绑在标准架构中
如果您有socket目标用户的对象,那么要仅向该用户发送消息,您应该使用:
socket.emit(...)
Run Code Online (Sandbox Code Playgroud)
如果您没有socket目标用户的对象,但有该用户的 socketID,那么您可以使用:
io.to(socketID).emit(...)
Run Code Online (Sandbox Code Playgroud)
真的没有理由使用socket.to(socketID)socketID 是 id 的地方,socket因为您已经拥有socket目标用户的对象,所以socket.emit()更直接,可能会稍微快一点。
| 归档时间: |
|
| 查看次数: |
2820 次 |
| 最近记录: |