这是存储我的临时应用数据的合适方式吗?
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 键控的散列中
关于session - Socket.io 和 session 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6230352/