小编vir*_*ara的帖子

无法访问Express.js上Passport.js中的req.user

req.user 除原始功能外无法访问任何地方.

我读到护照会在验证后将用户附加到每个请求.

我想阻止任何用户通过url栏访问内页,从而跳过登录页面,或者如果他的会话已经处于活动状态,则必须将其重定向到用户页面.只有当我访问req.user所有中间件时,才能完成这两件事.

app.js链接

app.js: -

app.post('/',passport.authenticate('local',{failureRedirect: '/'}),
function(req,res,next){
console.log(req.user); //req.user defined here only not in users.js
res.redirect('/users');
});
Run Code Online (Sandbox Code Playgroud)

users.js: -

router.get('/users', function(req, res, next) {
console.log(req.user);//undefined    
res.render('users');
});
Run Code Online (Sandbox Code Playgroud)

DeserializeUser: -

passport.deserializeUser(function(id, done) {
db.findById(id, function(err, user) {
done(err, user);
console.log(user) //undefined 
});
});
Run Code Online (Sandbox Code Playgroud)

javascript node.js express passport.js

2
推荐指数
1
解决办法
2049
查看次数

标签 统计

express ×1

javascript ×1

node.js ×1

passport.js ×1