anti_api / src /auth /jwt.js
liuw15's picture
增加一个简易的前端方便管理,增加dockerfile和docker-compose.yml
d244d35
import jwt from 'jsonwebtoken';
import config from '../config/config.js';
export const generateToken = (payload) => {
return jwt.sign(payload, config.admin.jwtSecret, { expiresIn: '24h' });
};
export const verifyToken = (token) => {
return jwt.verify(token, config.admin.jwtSecret);
};
export const authMiddleware = (req, res, next) => {
const authHeader = req.headers.authorization;
const token = authHeader?.startsWith('Bearer ') ? authHeader.slice(7) : null;
if (!token) {
return res.status(401).json({ error: 'Token required' });
}
try {
const decoded = verifyToken(token);
req.user = decoded;
next();
} catch (error) {
return res.status(401).json({ error: 'Invalid token' });
}
};