Node.js 当我设置req.session.whatever时,客户端不';无法获取connect.sid的cookie
我不知道出了什么问题,但很明显,当您使用express session并执行类似操作时:Node.js 当我设置req.session.whatever时,客户端不';无法获取connect.sid的cookie,node.js,session,express,cookies,Node.js,Session,Express,Cookies,我不知道出了什么问题,但很明显,当您使用express session并执行类似操作时: module.exports = function(app){ app.get('/',function(req,res){ var username = req.session.username ||''; res.render('index',{username:username}); }); app.post('/sign-up',function(req,res){ user
module.exports = function(app){
app.get('/',function(req,res){
var username = req.session.username ||'';
res.render('index',{username:username});
});
app.post('/sign-up',function(req,res){
users_controller.signUp(req,res);
res.redirect('/');
})
app.post('/log-in',function(req,res){
users_controller.logIn(req,res);
res.redirect('/');
})};
以及用户_controller.logIn函数
exports.logIn = function(req,res){
User.findOne({email:req.body.email}).exec(function(err,user){
if(!user){
err = 'User Not Found';
} else if (user.hashed_password===hashPW(req.body.password.toString())){
req.session.user = user.id;
req.session.username = user.username;
req.session.msg = "success authenticated as " + user.username;
console.log(req.session);
}else{
err = "Wrong Password";
}
if(err){
req.session.regenerate(function(){
req.session.msg = err;
});
}
});
当我直接在app.post('/login',callback)中设置req.session.whatever时,一切正常。但是当我使用另一个文件所需的登录功能时。尽管如此,您仍然可以记录req.session.whatever,但是客户端无法从响应头获取设置的cookie。
我真的一团糟。好吧,我很笨
这是一个异步的东西。
它重定向到主页,而不完成设置req.session.whatever