экспресс-jwt против jsonwebtoken

У меня такое чувство, что это будет быстрый ответ, но я не могу найти никаких отличных окончательных ответов в интернете - в чем разница между пакетом jsonwebtoken npm и пакетом express-jwt npm? Я!--2-->думаю express-jwt написан поверх jsonwebtoken и просто проверяет входящие токены и наборы req.user к полезной нагрузке пользователя на JWT.

это правильно? Извините, если это нуб вопрос... Я только начал изучать аутентификацию и node / express, так что все это довольно ново для меня.

2 ответов


возвращаться к этому много месяцев спустя. На случай, если это кому-то поможет,express-jwt построен поверх jsonwebtoken пакет и делает кучу дополнительных интересных вещей. Вы все еще используете jsonwebtoken подписать и проверить JWTs, но express-jwt помогает защитить маршруты, проверяет JWTs против секрета и создает req.user из полезной нагрузки токена, если он может это проверить.

tl; dr:express-jwt использует jsonwebtoken в собственном коде и добавляет дополнительную аккуратность.


Express-JWT - это просто библиотека для Express, которая проверяет / подписывает веб-маркеры json, которые можно использовать с веб-сервером express (middleware). JsonWebTokens - это еще одна реализация веб-токенов json. Существует много других библиотек токенов JWT, которые можно реализовать с помощью node. Express-jwt-только один из них. Они оба по сути делают то же самое, и вы можете использовать или. Ни один из них не построен поверх другого, они строятся с использованием стандарта JWT. Выберите тот, который лучше всего подходит для вашего требования.