Tho*_*mas 6 session node.js socket.io
这是存储我的临时应用数据的合适方式吗?
socket.on('connection', function(client){
client.myappsdata = {
a: true,
b: false
}
}
Run Code Online (Sandbox Code Playgroud)
我更喜欢稍微沉重的东西.
伪代码:
// 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, {
/* ... */
});
}
Run Code Online (Sandbox Code Playgroud)
每个客户端都有一个sessionId将其数据存储在由该sessionId键入的哈希值中