我没能通过sequelize使用护照js,

时间:2019-02-28 07:45:00

标签: javascript authentication sequelize.js passport.js

如何在快递上加载本地策略?

我尝试用console.log将我的护照stragetgi功能记录在我的钥匙/护照文件夹中

这里是键/文件夹代码

import LocalStrategy from 'passport-local'
import bcrypt from 'bcryptjs'
import models from '../models'
const {
  Players,
  Clubs,
  Competetions
} = models

export default function(passport) {
  passport.use(
    new LocalStrategy(
      function(email, password, done) {
        Players.findOne({
            where: {
              "email": email
            }
          })
          .then(data => {
            if (!data) {
              return done(null, false, {
                message: 'That email is not registered'
              })
            }

            bcrypt.compare(password, user.password, (err, isMatch) => {
              if (err) throw err;
              if (isMatch) {
                return done(null, user);
              } else {
                return done(null, false, {
                  message: 'Password incorrect'
                })
              }
            })

          }).catch(err => console.log(err))
      }
    )

  )


  passport.serializeUser(function(user, done) {
    done(null, user.id);

  });


  passport.deserializeUser(function(id, done) {

    Players.findById(id)
    .then(data => {
      if(data){
        done(null, data)
      }
    })
    .catch(err => {
      done(err, null)
    })
  })
}



// passport.serializeUser(function(user, done) {
//   done(null, user.id);
// });
//
// passport.deserializeUser(function(id, done) {
//   Players.findById(id, function(err, user) {
//     done(err, user);
//   });
// });

我是在答应中写长回调吗?? 0

1 我正在构建一个需要在登录期间进行身份验证的应用程序,为此我使用了passport(local-passport)。该应用程序未针对登录部分运行,并且删除了所有语法错误后可用的最后一个选项是,我使用续集时,我使用护照的方式(如其文档中给出的)是猫鼬。有人可以告诉我如何更正我的passport.js文件,以便它也可以正常工作吗? (通过sequelize使用mysql;数据库已填充)这是我的password.js文件

0 个答案:

没有答案