在尝试通过passport-jwt对用户进行身份验证时遇到了麻烦
这是代码:
const JwtStrategy = require('passport-jwt').Strategy;
const ExtractJwt = require('passport-jwt').ExtractJwt;
const userDB = require('../modules/usersDB');
const config = require('../config/conf')
module.exports = function(passport){
let opts = {};
opts.jwtFromRequest = ExtractJwt.fromAuthHeaderAsBearerToken();
opts.secretOrKey = config.secret;
console.log("hello")
passport.use(new JwtStrategy(opts, async(jwt_payload, done)=>{
try{
console.log("inside")
let user = await userDB.getUserById(jwt_payload.data._id);
if(user){
return done(null, user);
}
if(!user){
return done('no user', false);
}else{
return done(null, false)
}
}catch(err){
console.log(err);
}
}));
}
因此,当我尝试console.log('hello')
时,它可以工作,但内部却不起作用。我已经仔细阅读了本教程,但不知道为什么会发生。