Javascript 从回调访问jwtFromRequest

Javascript 从回调访问jwtFromRequest,javascript,node.js,authentication,passport.js,passport-jwt,Javascript,Node.js,Authentication,Passport.js,Passport Jwt,我正在学习使用JWT策略的passport.js,我想创建一个注销用户的系统 我想这样处理: 当用户注销时,他的令牌存储在我的数据库中,一个名为InvalidTokens 每次用户发出受保护的请求时,我都要检查他的令牌是否在表InvalidTokens中 问题是我不知道如何访问下面代码中的字段jwtFromRequest: //passport.js //存储身份验证策略的文件 // ... /** *对需要在服务器上进行身份验证的所有其他请求使用JWT策略 *服务器 */ 变量选项={ jwt

我正在学习使用
JWT
策略的passport.js,我想创建一个注销用户的系统

我想这样处理:

  • 当用户注销时,他的令牌存储在我的数据库中,一个名为
    InvalidTokens
  • 每次用户发出受保护的请求时,我都要检查他的令牌是否在表
    InvalidTokens
  • 问题是我不知道如何访问下面代码中的字段
    jwtFromRequest

    //passport.js
    //存储身份验证策略的文件
    // ...
    /**
    *对需要在服务器上进行身份验证的所有其他请求使用JWT策略
    *服务器
    */
    变量选项={
    jwtFromRequest:ExtractJWT.FromAuthHeaderAsberToken(),
    秘钥:“秘密”,
    }
    passport.use('jwt',新jwt策略(
    选择,
    异步(jwtPayload,done)=>{
    试一试{
    const token=wait TokenInvalide.findOne({
    其中:{
    令牌:“通过将
    passReqToCallback
    设置为true,可以将
    请求
    对象传递给回调

    还没有测试过这一点,但应该是正确的方向

    var opts = {
      jwtFromRequest: ExtractJWT.fromAuthHeaderAsBearerToken(),
      secretOrKey: 'secret',
    
      passReqToCallback: true // <----- Add this
    
    }
    
    passport.use('jwt', new JWTStrategy(
      opts,
      async (req, jwtPayload, done) => {
    
        const rawJWTToken = req['Authorization'].split(' ')[1]
    
        ...
      }
    ));
    
    var选项={
    jwtFromRequest:ExtractJWT.FromAuthHeaderAsberToken(),
    秘钥:“秘密”,
    passReqToCallback:true//{
    const rawJWTToken=req['Authorization'].split('')[1]
    ...
    }
    ));