Авторизация с токеном JWT?

Разрабатываю API, в котором сделал авторизацию через JWT, прикрутил TODO list, но как сделать так чтобы при запросе определенных ссылок, система говорила Вам нужно залогинится, прежде чем смотреть задачи и т.п... Как хранить токен и проверять его при каждом запросе?
  • Вопрос задан
  • 1795 просмотров
Пригласить эксперта
Ответы на вопрос 2
Sanasol
@Sanasol
нельзя просто так взять и загуглить ошибку
Смысл в JWT - не хранить токен.
JWT надо расшифровать и превратить в "сессию". Точнее узнать юзера который скрывается за токеном.
Дальше работа как при обычной авторизации через сессию.
Если нет сессии - пользователь не авторизован, не даете ему ничего делать.
Есить есть сессия - доступ открыт.
Ответ написан
@Suxoi Автор вопроса
Решение , нашел, точнее разобрался что не так делал с функцией проверки. Теперь все работает и все счастливы!

как правильно и говорили хранить токен не нужно, его разбирает функция. главное вернуть правильное значение и потом оперировать данными callback

var validate = (req, token, callback) => {
let err;

User.findOne({_id: token.id }, function(err, user) {
if (err) throw err;

if (!user) {
return callback(err, false, user);
}

return callback(err, true, user);
});
};

request.auth.credentials._id (Или любые значения которые впихнули в токен)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы