sql >> Database teknologi >  >> NoSQL >> MongoDB

Node.js og Passport Object har ingen metode validPassword

Du bruger

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

men du har ikke defineret validPassword metode. Vedhæft det til dit skema:

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

REDIGER Du har også defineret skemaet forkert. Det skal være:

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

Bemærk, at både username og password skal være String skriv objekter, ikke strenge "string" , hvis du ved hvad jeg mener. :)



  1. MongoDB $setIsSubset

  2. Nodejs - websocket-node modul:Hvordan får man multi-client socket-server til at fungere?

  3. Gendan data Mongodb fra JSON

  4. Meteor:Gem RegExp-objekt til session