Initial commit
This commit is contained in:
37
middleware/AuthDriverMiddleware.js
Normal file
37
middleware/AuthDriverMiddleware.js
Normal file
@ -0,0 +1,37 @@
|
||||
const Helper = require('../library/LibHelper');
|
||||
const DriversModels = require('../models/DriversModels');
|
||||
const LibJwt = require('../library/LibJwt');
|
||||
const response = require('../config/response');
|
||||
|
||||
class AuthDriverMiddleware {
|
||||
static async initialize(req, res, next) {
|
||||
let apiRes = {};
|
||||
try {
|
||||
const tokenData = await LibJwt.verifyToken(req.headers['x-api-key']);
|
||||
if (tokenData.type !== 'success') {
|
||||
apiRes = JSON.parse(JSON.stringify(response[401]));
|
||||
apiRes.meta.message += Helper.setErrMsg(': ' + tokenData.message);
|
||||
return res.status(200).json(apiRes);
|
||||
}
|
||||
const phoneDevice = await DriversModels.getDeviceByImei(tokenData.data.device_id);
|
||||
if (phoneDevice.length < 1) {
|
||||
apiRes = JSON.parse(JSON.stringify(response[401]));
|
||||
apiRes.meta.message += Helper.setErrMsg(': your session has expired');
|
||||
return res.status(200).json(apiRes);
|
||||
}
|
||||
if (phoneDevice[0].is_login !== DriversModels.IS_LOGIN) {
|
||||
apiRes = JSON.parse(JSON.stringify(response[401]));
|
||||
apiRes.meta.message += Helper.setErrMsg(': your session has expired');
|
||||
return res.status(200).json(apiRes);
|
||||
}
|
||||
req.auth = JSON.parse(JSON.stringify(tokenData.data));
|
||||
next();
|
||||
} catch (e) {
|
||||
apiRes = JSON.parse(JSON.stringify(response[401]));
|
||||
apiRes.meta.message += Helper.setErrMsg(': ' + e.message);
|
||||
return res.status(200).json(apiRes);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = AuthDriverMiddleware.initialize;
|
||||
26
middleware/AuthDriverMiddlewareNotStrict.js
Normal file
26
middleware/AuthDriverMiddlewareNotStrict.js
Normal file
@ -0,0 +1,26 @@
|
||||
const Helper = require('../library/LibHelper');
|
||||
// const DriversModels = require('../models/DriversModels');
|
||||
const LibJwt = require('../library/LibJwt');
|
||||
const response = require('../config/response');
|
||||
|
||||
class AuthDriverMiddlewareNotStrict {
|
||||
static async initialize(req, res, next) {
|
||||
let apiRes = {};
|
||||
try {
|
||||
const tokenData = await LibJwt.verifyToken(req.headers['x-api-key']);
|
||||
if (tokenData.type !== 'success') {
|
||||
apiRes = JSON.parse(JSON.stringify(response[401]));
|
||||
apiRes.meta.message += Helper.setErrMsg(': ' + tokenData.message);
|
||||
return res.status(200).json(apiRes);
|
||||
}
|
||||
req.auth = JSON.parse(JSON.stringify(tokenData.data));
|
||||
next();
|
||||
} catch (e) {
|
||||
apiRes = JSON.parse(JSON.stringify(response[401]));
|
||||
apiRes.meta.message += Helper.setErrMsg(': ' + e.message);
|
||||
return res.status(200).json(apiRes);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = AuthDriverMiddlewareNotStrict.initialize;
|
||||
32
middleware/AuthMiddleware.js
Normal file
32
middleware/AuthMiddleware.js
Normal file
@ -0,0 +1,32 @@
|
||||
const Helper = require('../library/LibHelper');
|
||||
// const UsersModels = require('../models/UsersModels');
|
||||
const LibJwt = require('../library/LibJwt');
|
||||
const response = require('../config/response');
|
||||
|
||||
class AuthMiddleware {
|
||||
static async initialize(req, res, next) {
|
||||
let apiRes = {};
|
||||
try {
|
||||
const tokenData = await LibJwt.verifyToken(req.headers['x-api-key']);
|
||||
if (tokenData.type !== 'success') {
|
||||
apiRes = JSON.parse(JSON.stringify(response[401]));
|
||||
apiRes.meta.message += Helper.setErrMsg(': ' + tokenData.message);
|
||||
return res.status(200).json(apiRes);
|
||||
}
|
||||
req.jwt = tokenData.data;
|
||||
// const getUser = await UsersModels.find(req.jwt.uid);
|
||||
// if (getUser.length < 1) {
|
||||
// apiRes = JSON.parse(JSON.stringify(response[401]));
|
||||
// return res.status(200).json(apiRes);
|
||||
// }
|
||||
req.jwt.hub_id = getUser[0].hub_id;
|
||||
next();
|
||||
} catch (e) {
|
||||
apiRes = JSON.parse(JSON.stringify(response[401]));
|
||||
apiRes.meta.message += Helper.setErrMsg(': ' + e.message);
|
||||
return res.status(200).json(apiRes);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = AuthMiddleware.initialize;
|
||||
17
middleware/MorganMiddleware.js
Normal file
17
middleware/MorganMiddleware.js
Normal file
@ -0,0 +1,17 @@
|
||||
const morgan = require('morgan');
|
||||
const LibWinston = require('../library/LibWinston');
|
||||
|
||||
const customFormat = "{remoteAddr:':remote-addr', remoteUser:':remote-user', date:':date[iso]', method:':method', url:':url', http:'HTTP/:http-version', statusCode:':status', contentLength:':res[content-length]', referrer:':referrer', userAgent:':user-agent'}";
|
||||
|
||||
class MorganMiddleware {
|
||||
static initialize() {
|
||||
return morgan(customFormat, {
|
||||
stream: {
|
||||
write: (msg) => LibWinston.http(msg),
|
||||
},
|
||||
// skip: (req, res) => res.statusCode < 400,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = MorganMiddleware.initialize();
|
||||
Reference in New Issue
Block a user