axios interceptors, middleware change, logger formatting, CORS

This commit is contained in:
2022-07-21 19:54:05 +05:30
parent ab6d60173c
commit da91fabbed
8 changed files with 123 additions and 28 deletions

View File

@@ -1,16 +1,22 @@
const typedefs = require("../typedefs");
const logger = require("../utils/logger")(module);
/**
* middleware to test if authenticated
*
* TODO: not checking if tokens are valid
* @param {typedefs.Req} req
* @param {typedefs.Res} res
* @param {typedefs.Next} next
*/
const isAuthenticated = (req, res, next) => {
if (req.session.refreshToken && req.session.accessToken) {
req.authHeader = `Bearer ${req.session.access_token}`;
// TODO: find a better way to set bearer token
req.authHeader = { 'Authorization': `Bearer ${req.session.accessToken}` };
next()
} else {
const delSession = req.session.destroy();
logger.info("Session destroyed.", { sessionID: delSession.id });
res.status(401).redirect("/");
}
}