Как декодировать токен с помощью jwt - PullRequest
1 голос
/ 04 октября 2019

Когда я пытаюсь проверить токен пользователя, я всегда получаю сообщение об ошибке 500.

function verifyToken(req, res, next) {
if(!req.headers.authorization){
    return res.status(401).send('Unauthorized request')
}
let token = req.headers.authorization.split(' ')[1]
if (token === 'null') {
    return res.status(401).send('Unauthorized request')
}
let payload = jwt.verify(token, 'secretkey')
if (!payload) {
    return res.status(401).send('Unauthorized request')
}
req.userId = payload.subject
next()

Я начал с Surround с попыткой перехватить полезную нагрузку, думаю, я понимаю, что операция jwt изменилась ичто сейчас это нужно для работы, но я не понимаю, почему это не работает. Кажется, он не может проверить матч.

function verifyToken(req, res, next) {
if(!req.headers.authorization){
    return res.status(401).send('Unauthorized request')
}
let token = req.headers.authorization.split(' ')[1]
if (token === 'null') {
    return res.status(401).send('Unauthorized request')
}
try {
    let payload = jwt.verify(token, 'secretkey')
    req.userId = payload.subject
    next()
} catch (error) {
    return res.status(401).send('Unauthorized request')
}  

}

1 Ответ

0 голосов
/ 04 октября 2019

Вы можете использовать jwt-decode / npm jwt-decode библиотека для декодирования. Пример из документа:

import jwt_decode from 'jwt-decode';

var token = 'eyJ0eXAiO.../// jwt token';
var decoded = jwt_decode(token);
console.log(decoded);

другая библиотека для проверки angular2-jwt

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...