sql >> Databasteknik >  >> NoSQL >> MongoDB

Node.js och Passport Object har ingen metod validPassword

Du använder

if (!user.validPassword(password)) {
    return done(null, false, { message: 'Incorrect password.' });
}

men du har inte definierat validPassword metod. Bifoga det till ditt schema:

var authSchema = mongoose.Schema({ 
    username: 'string',
    password: 'string'
});
authSchema.methods.validPassword = function( pwd ) {
    // EXAMPLE CODE!
    return ( this.password === pwd );
};

REDIGERA Du har också felaktigt definierat schemat. Det ska vara:

var authSchema = mongoose.Schema({ 
    username: String,
    password: String
});

Observera att både username och password ska vara String skriv objekt, inte strängar "string" , om du vet vad jag menar. :)



  1. PyMongo höjer [errno 49] kan inte tilldela begärd adress efter ett stort antal frågor

  2. Fel 99 vid anslutning till localhost:6379. Kan inte tilldela begärd adress

  3. Räkna en underdokumentegenskap i en projektion med MongoDB och Javascript

  4. mongoDB väljer post baserat på två villkor