Express Passport覆盖用户
问题是,当我使用2个用户登录时,第二个用户会覆盖第一个用户 我有这个密码来验证你的策略Express Passport覆盖用户,express,pug,passport.js,Express,Pug,Passport.js,问题是,当我使用2个用户登录时,第二个用户会覆盖第一个用户 我有这个密码来验证你的策略 passport.use(new LocalStrategy( function(username, password, done) { var passEncriptada = encriptar(username, password); process.nextTick(function () { UserDetails.findOne({'name':username},
passport.use(new LocalStrategy(
function(username, password, done) {
var passEncriptada = encriptar(username, password);
process.nextTick(function () {
UserDetails.findOne({'name':username},
function(err, user) {
if (err) { return done(err); }
if (!user) { return done(null, false); }
if (user.password != passEncriptada) { return done(null, false); }
return done(null, user);
});
});
}
));
当我与一个用户登录时,我转到/view并使用req.user
app.get('/', function(req,res){
var user = req.user;
res.render('index', {
title: 'Ejemplo de Passport JS',
user: user
});
});
如何将两个用户分开登录
您可以在app.js中看到完整代码,Passport(默认情况下)通过会话密钥跟踪登录的用户。此密钥通过cookie存储在浏览器中
如果您正在使用同一浏览器作为第二个用户登录,而您已经登录,则第一个用户的cookie将被第二个用户的cookie覆盖。您只能作为一个用户登录,特别是您上次登录的用户
您应该能够通过从其他浏览器以第二个用户身份登录来测试后端(因为浏览器不共享其cookie)。Passport(默认情况下)通过会话密钥跟踪登录的用户。此密钥通过cookie存储在浏览器中
如果您正在使用同一浏览器作为第二个用户登录,而您已经登录,则第一个用户的cookie将被第二个用户的cookie覆盖。您只能作为一个用户登录,特别是您上次登录的用户
您应该能够通过从其他浏览器以第二用户身份登录来测试后端(因为浏览器不共享其cookie)。您是否在同一浏览器中测试?是的,我使用Google Chrome您在同一浏览器中测试吗?是的,我使用Google Chrome