123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- const passport = require('passport');
- const LocalStrategy = require('passport-local');
- const User = require('../models/user');
- const keys = require('../keys');
- // Only For Session Authentication !
- passport.serializeUser(function(user, done) {
- done(null, user.id)
- })
- passport.deserializeUser(function(id, done) {
- User.findById(id, function(err, user) {
- done(err, user)
- })
- })
- passport.use(new LocalStrategy({
- usernameField: 'email',
- passwordField: 'password'
- }, (email, password, done) => {
- User.findOne({email}, function(err, user) {
- if (err) { return done(err); }
- if (!user) { return done(null, false) }
- user.comparePassword(password, function(err, isMatch) {
- if (err) { return done(err); }
- if (!isMatch) { return done(null, false) }
- return done(null, user)
- })
- })
- }))
|