首页 > 解决方案 > 当令牌的签名无效时,Passport 的 JWT 策略会发生什么?

问题描述

在护照的文档中,我们有以下策略配置的示例,但是如果 jwt 签名无效会发生什么,我们的回调甚至会被调用吗?

var JwtStrategy = require('passport-jwt').Strategy,
    ExtractJwt = require('passport-jwt').ExtractJwt;
var opts = {}
opts.jwtFromRequest = ExtractJwt.fromAuthHeaderAsBearerToken();
opts.secretOrKey = 'secret';
opts.issuer = 'accounts.examplesoft.com';
opts.audience = 'yoursite.net';
passport.use(new JwtStrategy(opts, function(jwt_payload, done) {
    User.findOne({id: jwt_payload.sub}, function(err, user) {
        if (err) {
            return done(err, false);
        }
        if (user) {
            return done(null, user);
        } else {
            return done(null, false);
            // or you could create a new account
        }
    });
}));

标签: jwtpassport.js

解决方案


推荐阅读