/
TimurIsm
/
OpenEyes
Обзор
Документация
Войти
/
TimurIsm
/
OpenEyes
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
back/middleware/authMiddleware.js
34 строки
1 KB
TimurIsm
first_commit
16 май 2026, 15:34
16 май 2026, 15:34
4d3f198
Код
Авторство
О чём код?
const jwt = require('jsonwebtoken') module.exports = function (req, res, next) { if (req.method === "OPTIONS") { return next() } try { const authHeader = req.headers.authorization if (!authHeader) { return res.status(401).json({message: "Пользователь не авторизован!"}) } const token = authHeader.split(' ')[1] if (!token) { return res.status(401).json({message: "Пользователь не авторизован!"}) } const decoded = jwt.verify(token, process.env.SECRET_KEY) if (decoded.exp && Date.now() >= decoded.exp * 1000) { return res.status(401).json({message: "Токен истек!"}) } req.user = decoded next() } catch (e) { if (e.name === 'TokenExpiredError') { return res.status(401).json({message: "Токен истек!"}) } else if (e.name === 'JsonWebTokenError') { return res.status(401).json({message: "Неверный токен!"}) } res.status(401).json({message: "Ошибка аутентификации!"}) } }