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



我正在用socket.io制作一个聊天应用程序,我想使用我的自定义客户端id,而不是默认id。连接时是否有发送自定义标识符的方法?感谢

当socket.io连接到服务器时,服务器可以通过以下几种方式发送自己的客户端id:

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

这里有一个例子:

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

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

最新更新