я не смог использовать паспорт JS с Sequelize, - PullRequest
0 голосов
/ 28 февраля 2019

как загрузить локальную стратегию на экспресс ??

я попробовал 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).Приложение не запускается для части входа в систему, и последняя опция, доступная после удаления всех синтаксических ошибок, заключается в том, что я использую паспорт (как указано в их документах) для мангуста, а я использую sequelize.Может кто-нибудь сказать, пожалуйста, как исправить мой файл passport.js, чтобы он нормально работал и для продолжения?(используя mysql через sequelize; база данных уже заполнена) вот мой файл passport.js

...