MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Node.js и Passport Object няма метод validPassword

Вие използвате

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

но не сте дефинирали validPassword метод. Прикачете го към вашата схема:

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

РЕДАКТИРАНЕ Вие също сте дефинирали неправилно схемата. Трябва да бъде:

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

Имайте предвид, че и двете username и password трябва да бъде String тип обекти, а не низове "string" , ако ме разбираш. :)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Не може да се запази състоянието на транзакцията, тъй като колекцията от транзакции на сесията липсва

  2. MongoServer.State еквивалент в драйвера 2.0

  3. Mongoid / Mongodb и заявка за вградени документи

  4. Филтрите на масива Mongodb 3.6.0-rc3 не работят?

  5. Populate() ref вложен в обектен масив