sql >> Base de Datos >  >> NoSQL >> MongoDB

Simplemente no puedo hacer que Passport.js funcione

No está configurando el parámetro inicial de pasaporte. use y pasando el requerimiento a la devolución de llamada, por ejemplo, desde mi código:

passport.use('local-login', new LocalStrategy({
    // by default, local strategy uses username and password, we will override with email
    usernameField : 'email',
    passwordField : 'password',
    passReqToCallback : true // allows us to pass back the entire request to the callback
},
function(req, email, password, done) {

    // asynchronous
    // User.findOne wont fire unless data is sent back
    process.nextTick(function() {

      db.Account.findOne( { ...

Luego puede autenticarse usando:

passport.authenticate('local-login',function(err,user,info){

En su caso, está llamando a pasaporte.autenticación 'local', por lo que su primer parámetro en pasaporte.uso debe ser 'local' para que llame a la estrategia correcta