我在使用 socket.io 时遇到了一些问题,我不知道如何解决它。我有一个带有 socket.io 登录系统的应用程序来管理用户交互。我还有一个数组来管理所有活动的 websocket 会话。该数组存储一对 session.id => 用户名。
当用户打开具有相同页面(或使用 websocket 的不同页面)的新选项卡时,问题就开始了。这会导致数组中出现重复的用户名条目。
{id1, username}
{id2, username}
当 socket 向用户发送消息时,它只发送到数组的第一个会话 id,因此只有一个选项卡接收消息。
我试图更改新连接的套接字 id 以匹配另一个,但它不起作用。
socket.id = sessionId of the other websocket;
我认为另一种解决方案是将消息发送到所有打开的会话,但我认为这不是最好的方法。
谢谢。