create-ex-den-kit
Version:
Create exam projects with Ex-Den-Kit
25 lines (20 loc) • 693 B
JavaScript
import jwt from 'jsonwebtoken';
export const authMiddleware = (req, res, next) => {
try {
const token = req.headers.authorization?.split(' ')[1];
if (!token) {
return res.status(401).json({ error: 'Токен не предоставлен' });
}
const decoded = jwt.verify(token, process.env.JWT_SECRET || 'secret-key');
req.user = decoded;
next();
} catch (error) {
return res.status(401).json({ error: 'Недействительный токен' });
}
};
export const adminMiddleware = (req, res, next) => {
if (req.user.role !== 'admin') {
return res.status(403).json({ error: 'Доступ запрещен' });
}
next();
};