套接字.IO获取套接字所属的命名空间



是否有办法获得套接字命名空间?我试过各种方法,但都不行。给定一个套接字对象,我希望能够知道它属于什么命名空间。非常感谢。

例如

nsp = io.of('/' + venue_code).on('connection', function(socket) {
    socket.namespace = nsp
    if (typeof servers[nsp.name] == 'undefined') {
        servers[nsp.name] = socket.id
        winston.debug("Server " + socket.id + " connected to " + nsp.name)
        socket.room = "servers"
        socket.join(socket.room)
    } else {
        socket.room = "clients"
        socket.join(socket.room)
        winston.debug("Client " + socket.id + " connected to " + nsp.name)
    }

它只是socket.nsp,它给出了整个Namespace对象。使用socket.nsp.name获取实际名称

nsp = io.of('/' + venue_code).on('connection', function(socket) {
    winston.debug(socket.nsp)
}

注意,如果您将相同的处理程序附加到根名称空间,您将获得根名称空间——在附加正确的名称空间之前运行这些中间件

相关内容

  • 没有找到相关文章