假设您有一个用户可以打开聊天室的网站.一旦房间打开,用户可以邀请其他人聊天.
让我们假装你想使用WebSockets与客户进行通信.在大多数服务器端WebSocket实现中,有一个简单的函数connection.broadcast(message),它向所有连接的主机发送消息,但不向发起广播的主机发送消息.这是一个很棒的功能,因为您不需要为自己保留所有客户端的列表,以保持更新.聊天室示例的问题在于,在这种情况下,您不希望向每个人广播每条消息,而只是向同一房间中的其他客户端广播.
这让我有两个选择:
broadcastToRoom(room_id)功能,这反过来意味着跟踪所有客户和房间.你会怎么做?