const jwt = require('jsonwebtoken'); const JWT_SECRET = process.env.JWT_SECRET || 'lottery-secret-key-change-in-production'; function authMiddleware(req, res, next) { const token = req.headers.authorization?.split(' ')[1]; if (!token) { return res.status(401).json({ error: '未登录' }); } try { const decoded = jwt.verify(token, JWT_SECRET); req.user = decoded; next(); } catch (err) { return res.status(401).json({ error: 'token无效' }); } } function generateToken(user) { return jwt.sign({ id: user.id, username: user.username }, JWT_SECRET, { expiresIn: '7d' }); } module.exports = { authMiddleware, generateToken, JWT_SECRET };