Spaces:
Sleeping
Sleeping
| const jwt = require('jsonwebtoken'); | |
| function authMiddleware(req, res, next) { | |
| const authHeader = req.headers.authorization; | |
| if (!authHeader || !authHeader.startsWith('Bearer ')) { | |
| return res.status(401).json({ message: 'No token provided' }); | |
| } | |
| const token = authHeader.split(' ')[1]; | |
| try { | |
| const decoded = jwt.verify(token, process.env.JWT_SECRET); | |
| req.userId = decoded.userId; | |
| next(); | |
| } catch { | |
| return res.status(401).json({ message: 'Invalid or expired token' }); | |
| } | |
| } | |
| module.exports = authMiddleware; | |