这是在 socket_io python 服务器的 base_manager.py 中——>这段代码有什么意义?我想发出一条消息。如果没有房间,这怎么可能奏效?如果命名空间不在 self.rooms--> 没有空间所以它总是会返回给调用者对吗?:
def emit(self, event, data, namespace, room=None, skip_sid=None,
callback=None):
"""Emit a message to a single client, a room, or all the clients
connected to the namespace."""
if namespace not in self.rooms or room not in self.rooms[namespace]:
return
for sid in self.get_participants(namespace, room):
if sid != skip_sid:
if callback is not None:
id = self._generate_ack_id(sid, namespace, callback)
else:
id = None
self.server._emit_internal(sid, event, data, namespace, id)