Files
censo2020Back/server/middlewares/authentication.js
T

46 lines
999 B
JavaScript
Raw Normal View History

2020-08-17 11:35:15 -05:00
const jwt = require('jsonwebtoken');
const verifyToken = (req, res, next) => {
2020-09-10 03:06:23 -05:00
// if (typeof localStorage === "undefined" || localStorage === null) {
// var LocalStorage = require('node-localstorage').LocalStorage;
// localStorage = new LocalStorage('./scratch');
// }
// let localToken = localStorage.getItem('token');
2020-08-17 11:35:15 -05:00
2020-09-10 03:06:23 -05:00
let localToken = req.get('token');
2020-08-17 11:35:15 -05:00
jwt.verify(localToken, process.env.TOKEN_SEED, (err, decoded) => {
if (err) {
return res.status(401).json({
err: {
message: 'Invalid token.'
}
})
}
req.user = decoded.user;
next();
2020-09-10 03:06:23 -05:00
});
}
const verifyAdmin = (req, res, next) => {
let isAdmin = !!req.user.isAdmin;
if (!isAdmin) {
return res.status(401).json({
err: {
message: 'Is not admin.'
}
})
};
next();
2020-08-17 11:35:15 -05:00
}
2020-09-10 03:06:23 -05:00
module.exports = {
verifyToken,
verifyAdmin
};