node.js - 如何在套接字对象中存储或添加数据?

标签 node.js socket.io

我有一个基于此的套接字 ID,我需要获取用户详细信息。那么我可以在套接字对象中存储用户详细信息吗?

如何在套接字对象中添加用户详细信息?

在这里,我可以将此套接字 ID 存储在数据库中,但每次用户连接或断开连接时我都需要更新它。在这种情况下,它会影响应用程序的性能。

我还在这里实现了集群模式,因此我不会将这些详细信息存储在任何全局对象中。

这是在套接字对象中存储用户详细信息的方法吗?

最佳答案

这个解决方案对我有帮助

io.on("connection", async (socket) => {
   socket.data = {
    userId: "",
  };

   const allSocketUsers = await io.in(roomId).fetchSockets();

   
  const postCreator = allSocketUsers?.find((userSocket) => {
    return userSocket.data.userId === id;
  });

   console.log(postCreator.id);
});

关于node.js - 如何在套接字对象中存储或添加数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76179072/

相关文章:

javascript - 如何在控制台中列出我的机器人所在的所有 Discord 服务器 ID? |不和谐.js

node.js - @angular/cli : 1. 4.1 Angular 生成组件但它返回 home.component.css

node.js - 我如何使用带有 promise 的 Socket.IO?

javascript - 关联数组中的双索引

node.js - 没有 SSL,Heroku 上的 Socket.IO 无法工作

javascript - 如何在for循环中顺序调用JavaScript函数?

node.js - 使用异步 Node.JS 处理 HTTP 请求

javascript - Socket.io 类型错误 : undefined is not a function

node.js - 如何从 nodejs 脚本安装 npm 包?

node.js - Socket.IO 服务器节流快速客户端