【发布时间】:2015-01-26 06:44:54
【问题描述】:
我决定在我的应用程序中使用 socket.io 并偶然发现了一个问题。我使用cookie-session 进行快速授权:
var session = require('cookie-session');
var app = express();
// ...
app.use(session({
keys: ['secretkey1', 'secretkey2']
}))
// ...
app.get('/settings', function(req, res) {
res.type("html");
if (!req.session.sid) {
console.log("NO SID");
req.session.sid = util.randomString();
}
else {
console.log("sid:" + req.session.sid);
}
// doing stuff with req.session.sid
var jadeView = { /*...*/ };
res.status(200).send(mainJade(jadeView));
});
现在我使用 socket.io。我想出了如何访问 cookie:
io.sockets.on('connection', function(socket) {
var cookie_string = socket.request.headers.cookie;
console.log("cookies: " + cookie_string);
// ...
}
但是如何将cookie_string 转换为会话对象,例如req.session?
【问题讨论】:
标签: node.js session cookies express socket.io