22 lines
647 B
JavaScript
22 lines
647 B
JavaScript
const { verifyToken, isRevoked } = require('../utils/jwtHelpers');
|
|
|
|
const jwtMiddleware = (req, res, next) => {
|
|
const auth = req.headers.authorization || '';
|
|
const [scheme, token] = auth.split(' ');
|
|
|
|
if (scheme !== 'Bearer' || !token) {
|
|
return res.status(401).json({ status: 401, message: 'Bad authorization header' });
|
|
}
|
|
if (isRevoked(token)) {
|
|
return res.status(401).json({ status: 401, message: 'Token revoked' });
|
|
}
|
|
|
|
try {
|
|
req.user = verifyToken(token);
|
|
next();
|
|
} catch {
|
|
return res.status(401).json({ status: 401, message: 'Error: access_token is not valid' });
|
|
}
|
|
};
|
|
|
|
module.exports = { jwtMiddleware };
|