All files / middleware auth.js

17.85% Statements 5/28
100% Branches 0/0
0% Functions 0/1
17.85% Lines 5/28

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 291x 1x 1x                                               1x 1x  
const jwt = require('jsonwebtoken');
 
const verifyToken = (req, res, next) => {
    const bearerHeader = req.headers['authorization'];

    if (!bearerHeader) {
        return res.status(401).json({
            success: false,
            message: 'No se proporcionó token de acceso'
        });
    }

    try {
        const bearer = bearerHeader.split(' ');
        const token = bearer[1];
        const decoded = jwt.verify(token, process.env.JWT_SECRET || 'tu_secreto_jwt');
        
        req.user = decoded;
        next();
    } catch (error) {
        return res.status(401).json({
            success: false,
            message: 'Token inválido o expirado'
        });
    }
};
 
module.exports = verifyToken;