|
const { Strategy: JwtStrategy, ExtractJwt } = require('passport-jwt'); |
|
const User = require('../models/User'); |
|
|
|
|
|
const jwtLogin = async () => |
|
new JwtStrategy( |
|
{ |
|
jwtFromRequest: ExtractJwt.fromAuthHeaderAsBearerToken(), |
|
secretOrKey: process.env.JWT_SECRET, |
|
}, |
|
async (payload, done) => { |
|
try { |
|
const user = await User.findById(payload.id); |
|
if (user) { |
|
done(null, user); |
|
} else { |
|
console.log('JwtStrategy => no user found'); |
|
done(null, false); |
|
} |
|
} catch (err) { |
|
done(err, false); |
|
} |
|
}, |
|
); |
|
|
|
module.exports = jwtLogin; |
|
|