Pat*_*tle 8 sockets node.js socket.io
我目前正在使用node.js和使用socket.io模块构建应用程序.当用户连接时,我将特定于用户的数据存储在其套接字上.例如
io.sockets.on('connection', function (socket) {
socket.on('sendmessage', function (data, type) {
socket.variable1 = 'some value';
socket.variable2 = 'Another value';
socket.variable3 = 'Yet another value';
});
});
Run Code Online (Sandbox Code Playgroud)
虽然这有效但我的问题是,这是一个很好的方法.我有效地存储会话数据但是有更好的方法吗?
我认为你应该将这些变量存储在另一种类型的对象中。保留套接字对象仅用于通信。您可以为每个用户生成唯一的 ID 并创建地图。像这样的东西:
var map = {},
numOfUsers = 0;
io.sockets.on('connection', function (socket) {
numOfUsers += 1;
var user = map["user" + numOfUsers] = {};
socket.on('sendmessage', function (data, type) {
user.variable1 = 'some value';
user.variable2 = 'Another value';
user.variable3 = 'Yet another value';
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5545 次 |
| 最近记录: |