在socket.io中获取请求对象的内容



我是socket.io的新手,我试图区分连接到我的节点服务器的每个客户端。

我想只向一个客户端发送数据,而不是向所有客户端广播相同的数据。所以,我必须为每个客户找到一个独特的部分。

如果我得到了,我必须做一些类似的事情

io.on('connection', function (socket) {
    var origin =  socket.request;
    console.log("hey, so , new ws connection is >  "+origin);
});

但我得到了[object, Object]

这个对象的内容是什么,这样我就可以获得像id这样唯一的东西。这个对象还包含哪些其他数据,将来可能会派上用场?

感谢

更新

我看到了socket.id。但是,每次刷新时,id都会更改。我希望某些东西是稳定的,否则如果客户端出于某种原因刷新,将不再与第一个id相关。有什么提示吗?

每个连接都有socket.id是唯一的,如果您使用套接字io适配器,则可以使用套接字握手信息。在浏览器上获取套接字。我尝试

 $(function () {
        setTimeout(function () {
            $("#socketId").val(socket.id);
        },100);
    });

如果console.log,您将在未来的中看到socket.id

您可以使用socket.id属性来获取套接字(客户端套接字)的唯一标识符。至于这个对象包含的其他数据,有很多有用的数据,但有用性取决于应用程序。请查看以下链接,了解套接字对象上的可用属性/方法。http://socket.io/docs/server-api/

一些非常有用的方法是emit、join、leave、to、in,属性包括id和rooms。

相关内容

  • 没有找到相关文章

最新更新