带有nodejs自定义套接字ID的套接字io

时间:2016-04-07 19:11:34

标签: node.js socket.io chat

我正在使用socket.io制作聊天应用,并且我想使用我的自定义客户端ID,而不是默认值。连接时有没有办法发送自定义标识符?感谢

1 个答案:

答案 0 :(得分:0)

当与服务器建立socket.io连接时,服务器可以通过多种方式发送您自己的客户端ID:

  1. 您可以设置客户端可以访问的cookie。与socket.io的初始连接是一个HTTP请求(所有webSocket连接都是通过HTTP请求启动的),因此您可以将cookie设置为该初始请求的一部分。
  2. 服务器看到传入连接后,您可以输入客户端ID,然后将其作为您自己的消息发送给客户端。
  3. 以下是一个例子:

    io.on('connection', function (socket) {
      // create the client id here
      // ...
      // send the id to the client
      socket.emit('setID', clientID);
    });
    

    然后,客户端将侦听setID消息以获取其ID。