1234567891011121314151617181920212223 |
- const passport = require("passport");
- const UserModel = require("../model/user");
- const { Strategy, ExtractJwt } = require("passport-jwt");
- require("dotenv").config();
- const SECRET_KEY = process.env.JWT_SECRET;
- const params = {
- secretOrKey: SECRET_KEY,
- jwtFromRequest: ExtractJwt.fromAuthHeaderAsBearerToken(),
- };
- passport.use(
- new Strategy(params, async ({ id }, done) => {
- try {
- const user = await UserModel.findById(id);
- if (!user) return done(new Error("User not found"));
- if (!user.token) return done(null, false);
- return done(null, user);
- } catch (err) {
- done(err);
- }
- })
- );
|