Как отправить статус неавторизованного ответа в формате json в nodejs при использовании стратегии passport-jwt в паспорте js? - PullRequest
0 голосов
/ 19 января 2019

Я использую nodejs и passport js для авторизации с использованием стратегии passport-jwt.Вот мой кодРаботает с токеном JWT.Но когда токен не предоставлен, он дает ответ в текстовом формате как «Несанкционированный».Я хочу настроить его и сделать его в формате JSON.

Как вернуть настроенный ответ json, когда запрос не аутентифицирован.

 router.get('/users',passport.authenticate('jwt', {session:false}), UserController.get);

Вот определение стратегии.

var opts = {};
    opts.jwtFromRequest = ExtractJwt.fromAuthHeaderAsBearerToken();
    opts.secretOrKey = CONFIG.jwt_encryption;

    passport.use(new Strategy(opts, async function(jwt_payload, done){
        let err, user;
        [err, user] = await to(User.findById(jwt_payload.user_id));

        if(err) return done(err, false);
        if(user) {
            return done(null, user);
        }else{
            return done(null, false);
        }
    }));

...