Полезная нагрузка jwt одинакова каждый раз, когда я регистрирую нового пользователя - PullRequest
0 голосов
/ 10 мая 2018

Я новичок в этом.я следовал этому уроку // https://devdactic.com/restful-api-user-authentication-1/

, так что все работает, adduser хэширует, логин возвращает jwt логин, новый пользователь возвращается в jwt.encode в route / api / login ивозвращается новый jwt

Я хочу получить информацию о пользователе из защищенного маршрута, например

server.get ('/ api / routeThatNeedsJWTToken', passport.authenticate ('jwt',{session: false}), function (req, res) {res.json ({'Успех! Вы не можете увидеть это без токена': 'bla', user: req.user});});

Здесь возвращаемый req.user всегда является первым зарегистрированным пользователем.Мне нужен тот, который соответствует JWT, идентификатор пользователя или имя.

любая помощь оценена, или я думаю начать с нуля и идти по этому пути https://www.sitepoint.com/using-json-web-tokens-node-js/

пожалуйста, посмотрите server.js и config / passport.js для ознакомления с кодом https://github.com/Lambda-School-Labs/decisionjam

1017 * здесь пример два JWT eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjaG9pY2VzIjpbXSwiY3JlYXRlZE9uIjoiMjAxOC0wNS0xMFQxMjozMjo1MS45MTJaIiwiX2lkIjoiNWFmNDNiZjNmZmNmNGNmM2JjMjBlMmFjIiwidXNlcm5hbWUiOiJwYXQxIiwiZW1haWwiOiJwYXRlbWFpbDEiLCJwYXNzd29yZCI6IiQyYSQxMCR2eERIc2RkckYxZUFDdURIODdTNlFPYlZVcTlPcUtoNmV1cmRkQWpvWTVXbkRFaXRwbGJqYSIsIl9fdiI6MH0.vUcvRiJJD5s8kWBIodbE5ZCQeRdn0r7m6b1pC0KWnYk " 1019 * JWT eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjaG9pY2VzIjpbXSwiY3JlYXRlZE9uIjoiMjAxOC0wNS0xMFQxMjo1MjoyNy45MThaIiwiX2lkIjoiNWFmNDQwOGI4MDA2YWJmNGUxZGU5ZmIxIiwidXNlcm5hbWUiOiJwYXQyIiwiZW1haWwiOiJwYXRlbWFpbDIiLCJwYXNzd29yZCI6IiQyYSQxMCRTbGhqTHg0aXBlSzRRd2h5T0FSajRPaHZZSWpyWG1rVmFjUjdYL09kMlBpdldoTG5lcUtzSyIsIl9fdiI6MH0.NmZrAupocchKjvwUBblOpLBIFmMujaF2gZ9ii_YfK48"

1 Ответ

0 голосов
/ 10 мая 2018

В req.user - пользователь, сохраненный в сеансе. Если вы хотите извлечь пользователя из токена JWT, вы должны добавить метод аутентификации в объявлении пути, который извлекает информацию из токена JWT, с помощью jwt.decode и передает результат в req.user. Таким образом, пользовательский объект в запросе будет аутентифицирован пользователем с помощью токена.

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