gpt4 book ai didi

socket.io - 多次加入同一个房间和一个房间的客户

转载 作者:行者123 更新时间:2023-12-04 01:49:05 24 4
gpt4 key购买 nike

我试图弄清楚如果客户多次发出加入同一个房间会发生什么,为了测试并找到答案,我最初想找出在相同的客户发送多于一个发射加入后有多少客户房间房间,但是 wiki 中的房间章节 https://github.com/Automattic/socket.io/wiki/Rooms已过时。当我尝试使用“io.sockets.clients('room')”时,我收到错误“对象 # 没有方法 'clients'”。

所以我有两个问题:
1. 如果客户多次尝试加入同一个房间会怎样?每次他尝试加入时,他会得到那个房间的发射吗?
2. 我怎样才能知道房间里有哪些客户?

我正在使用 socket.io v1.0.2

最佳答案

我在 socket.io github 上得到了这个问题的答案。 .

  • 根据 this一行代码,套接字将只接收一次发射。套接字仅添加到房间一次,如果再次尝试将同一套接字加入房间,则此尝试将被忽略。
  • 目前没有用于获取客户端的公共(public) API,#1428 中正在进行一些讨论.如果您真的需要获取它们,出于某种原因,您可以从适配器获取实际的客户端,假设您没有像这样使用 redis 适配器:
    socket.join('test room');
    var clients = io.sockets.adapter.rooms['test room'];
    console.log(clients);
    for (var clientId in clients) {
    console.log(io.sockets.connected[clientId]);
    }
  • 关于socket.io - 多次加入同一个房间和一个房间的客户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23930388/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com