Back to questions
Junior — Middle
89
Каково предназначение JSON Web Token и в каких сценариях его применяют?
Answer from AI
sobes.tech AI
JSON Web Token (JWT) — это компактный, URL-безопасный способ передачи информации между сторонами в виде JSON-объекта. Основное предназначение JWT — аутентификация и авторизация пользователей в веб-приложениях.
Сценарии применения:
- Передача данных о пользователе после входа в систему (например, ID, роли) без необходимости хранить сессию на сервере.
- Обеспечение безопасности API, где клиент отправляет JWT в заголовке Authorization для подтверждения своей личности.
- Обмен информацией между сервисами в распределённых системах.
Пример использования в Node.js:
const jwt = require('jsonwebtoken');
// Создание токена
const token = jwt.sign({ userId: 123, role: 'admin' }, 'секретный_ключ', { expiresIn: '1h' });
// Проверка токена
try {
const decoded = jwt.verify(token, 'секретный_ключ');
console.log(decoded.userId); // 123
} catch (err) {
console.error('Неверный токен');
}