我在 NodeJs 脚本上方的 session 中保存某些内容时遇到了问题。如果我启动脚本并进行如下所示的登录后操作:
app.post('/login', function(req, res) {
sess = req.session;
sess.key = "SecureKEy";
console.log(sess);
});
我得到了我想要的结果:
Session { cookie: { path: '/', _expires: null, originalMaxAge: null, httpOnly: true }, key: 'SecureKEy' }
但是如果我使用此代码重新加载页面,则 session.key 为空。就像没有保存一样。
app.get('/', function(req, res) {
sess = req.session;
console.log(sess);
res.sendFile(__dirname+'/wwwroot/index.html');
});
我的快速 session 配置是这样的:
const session = require('express-session');
app.use(session({
secret: 'importent',
resave: true,
saveUninitialized: true
}));
最佳答案
我已经重写了这样的代码:
app.post('/login', function(req, res) {
console.log("Before: ");
console.log(sess);
sess = req.session;
sess.key = "SecureKEy";
req.session.save();
console.log("After: ");
console.log(sess);
});
这样就可以正常工作了。但是,如果我使用 res.send 重新发送登录页面, session 会自动保存吗?这是正确的吗?
关于javascript - NodeJs 快速 session 不保存 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48367558/