Socket.io和会话数据

这是一个适当的方式来存储我的临时应用程序数据?

socket.on('connection', function(client){ client.myappsdata = { a: true, b: false } } 

我更喜欢稍重些的东西。

伪代码:

 // ClientManager.js var Manager = new function() { this._clients = []; this.set = function(client, data) { this._clients[client.sessionId] = data; }; this.get = function(client) { return this._clients[client.sessionId]; } }; module.exports = function() { return Object.create(Manager); }; // main.js var manager = require("ClientManager")(); /* ... */ socket.on("connection", function(client) { manager.set(client, { /* ... */ }); } 

基本上,每个客户端都有一个sessionId因此将它们的数据存储在由该sessionId键入的散列中