var用户来自Passport文档

时间:2014-10-04 21:13:37

标签: javascript node.js passport.js

我只是在Passport

中了解Node
 passport.use(new LocalStrategy(
   function(username, password, done) {
     User.findOne({ username: username }, function (err, user) {
       if (err) { return done(err); }
       if (!user) {
         return done(null, false, { message: 'Incorrect username.' });
       }
       if (!user.validPassword(password)) {
         return done(null, false, { message: 'Incorrect password.' });
       }
       return done(null, user);
     });
   }
 ));

这一切都很棒,我理解逻辑。但是我不明白

中变量User的位置
User.findOne({ username:....

来自哪里?这没有在任何地方设置,让我感到困惑。

1 个答案:

答案 0 :(得分:2)

该示例使用的是其他地方定义的mongoose modelUser)。 Mongoose模型有findOne function。它主要是填充,以显示如何使用策略在数据库中查找信息以验证用户。