Я читал о JWT и пытаюсь реализовать его на своем сервере. У меня уже есть API, который принимает пользователя и отправляет обратно JWT со сроком действия. Что ж ... тогда у меня есть другой метод проверки токена. Есть ли какой-либо метод, который я могу использовать для увеличения срока действия обычного токена доступа? Я читал, что есть другой тип токена, называемый Refresh Token ... но это больше, чем мне нужно ... я просто хочу увеличить время истечения срока действия, вот и все
jwt.sign({ user }, SECRET , { expiresIn: '5m'} ); // HOW I CREATE THE TOKEN
jwt.verify(req.token, SECRET , (error, data) => {} <---- // HERE IS WHERE I WOULD LIKE TO INCREASE





Как вы сказали, время истечения срока действия в JTW устанавливается, когда JWT сгенерирован и подписан. Вы не можете изменить существующий токен, например изменив срок годности, потому что после изменения подпись больше не будет правильной. Возможность внесения таких изменений сделает недействительной безопасность, которую использует JWT.
Я предлагаю вам прочитать, как работает JWT. Ознакомьтесь с частью следующей статьи, посвященной Signature: Введение в веб-токены Json - jwt.io
Что вы можете сделать по этому поводу? Просто создайте новый JWT.
Нет. Просто выдайте новый токен, как и для нового пользователя. В новом токене вы можете установить новый срок действия.
хорошо, но это кажется немного тяжелым для сервера, если у вас много пользователей, он должен генерировать из них looootttt ... определенно, я думаю, было бы неплохо иметь метод, который может увеличить время истечения срока действия ... Спасибо за все!
Это зависит исключительно от количества пользователей и срока действия токенов по умолчанию, но обычно JWT не должен вызывать беспокойства с точки зрения нагрузки на сервер. Кроме того, если вы считаете и ответы здесь полезными, подумайте о том, чтобы проголосовать за них. :)
Вам придется заново создать токен. Токен подписан, что делает его уникальным. Он нарушает назначение токена, если вы измените время истечения срока действия и волшебным образом станет действительным.
Могу я попытаться понять, что мешает вам сгенерировать новый токен в том месте, где вы хотите увеличить время опыта?
вау, я не ожидал, что после того, как я получу токен в моем клиенте, я буду использовать этот токен в каждой петиции, которую клиент отправляет серверу, и сервер проверяет, правильный ли этот токен ... так что ... вместо того, чтобы сгенерировать новый токен в каждой петиции, я думаю, было бы неплохо, если бы я мог просто продлить срок действия ... но, как вы говорите ... это невозможно.
идея заключается в том, что вы создаете новый токен, для которого хотите увеличить время истечения срока действия .. сервер в любом случае проверит токен в следующий раз, когда он будет отправлен обратно.
Я думаю, что это ограничение, что вам нужно изменить токен с новым сроком действия, и клиент должен сохранить новый токен для следующего запроса.