Express JS и JWT - тип токена не отображается в декодированном заголовке
Я только что добавил аутентификацию на основе токенов в свое экспресс-приложение JS - похоже, тип токена не отображается в декодированном разделе.
Я тестирую с использованием https://jwt.io/
Токен, который я использовал для тестирования -
eyJhbGciOiJIUzI1NiJ9.eyJfaWQiOiJSYW4zIiwibmFtZSI6IlJhbjMgVGVzdCJ9.YPJXc4tp8NaWcboE9obwGvm-AGa6fkN1IA6y0pT7u-w"
Раздел заголовка просто показывает вверх
{
"alg": "HS256"
}
Я ожидаю, что это появится так -
{
"alg": "HS256",
"typ": "JWT"
}
Пожалуйста, объясните, почему тип Token отсутствует в шапке?
Я генерирую токен, как это -
var token = jwt.sign(JSON.stringify(user_dict), app.get('superSecret'));
Спасибо
1 ответ
"Тип" - это необязательный параметр в заголовке в соответствии со спецификацией, который обычно не используется, поэтому большинство примеров не сообщают, как это сделать. Предполагая, что вы используете эту библиотеку ( https://github.com/auth0/node-jsonwebtoken), вы сможете передать параметры "заголовку" через options.header
значение, которое должно позволить вам указать поле "typ":"JWT" через
var options = { "header": { "typ": "JWT" } };
var token = jwt.sign(JSON.stringify(user_dict), app.get('superSecret'), options);