简体   繁体   中英

NodeJS + Passport.js - no session stored?

I have a problem with sessions in my app. I'm trying to learn Passport.js based on this tutorial: http://www.sitepoint.com/local-authentication-using-passport-node-js/ . What I want to do is to allow the acccess for only authenticated users. The process of login works great, but when I check if the user is authenticated, it always says not. What could go wrong? Here is the checking function:

if (req.isAuthenticated()) {
  return next();
else {
  res.redirect('/');
}

Here is the path from the router:

router.get('/secret', isAuthenticated, function(req, res) {
  res.send('Welcome to the secret page');
});

I didn't find any domunentation about how to check if the session was established, where it is and so on.

Try this, taken from passport.js documentation.

app.get('/secret', passport.authenticate('local'), function(req, res) {
    // If this function gets called, authentication was successful.
    // `req.user` contains the authenticated user.
});

http://passportjs.org/guide/authenticate/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM