taller6
This commit is contained in:
33
taller6/backend/middlewares/auth.js
Normal file
33
taller6/backend/middlewares/auth.js
Normal file
@@ -0,0 +1,33 @@
|
||||
'use strict'
|
||||
|
||||
const jwt = require('jwt-simple');
|
||||
const moment = require('moment');
|
||||
require('dotenv').config();
|
||||
|
||||
function isAuth(req, res, next) {
|
||||
if (!req.headers.authorization) {
|
||||
return res.status(403).send({ message: 'No tienes autorizacion' });
|
||||
}
|
||||
|
||||
const token = req.headers.authorization.split(" ")[1]
|
||||
|
||||
try {
|
||||
const payload = jwt.decode(token, process.env.SECRET_TOKEN);
|
||||
|
||||
if (payload.exp < moment().unix()) {
|
||||
return res.status(401).send({ message: 'El token ha expirado' });
|
||||
}
|
||||
|
||||
req.usuario = payload.sub
|
||||
}
|
||||
catch (err) {
|
||||
return res.status(401).send({ message: 'El token no es valido' });
|
||||
}
|
||||
|
||||
next();
|
||||
}
|
||||
|
||||
|
||||
module.exports = {
|
||||
isAuth
|
||||
};
|
Reference in New Issue
Block a user