Files

24 lines
801 B
JavaScript
Raw Permalink Normal View History

const jwt = require('jsonwebtoken');
const authenticateToken = (req, res, next) => {
const authHeader = req.headers['authorization'];
const token = authHeader && authHeader.split(' ')[1];
if (!token) {
console.log('❌ Token não fornecido para:', req.path);
return res.status(401).json({ error: 'Token não fornecido' });
}
jwt.verify(token, process.env.JWT_SECRET, (err, user) => {
if (err) {
console.log('❌ Token inválido para:', req.path, err.message);
return res.status(403).json({ error: 'Token inválido' });
}
console.log('✅ Token válido para:', req.path, 'User:', user.email, 'Company:', user.company_id);
req.user = user;
next();
});
};
module.exports = { authenticateToken };