binds all API routes to api prefix route, refactors to support

This commit is contained in:
James
2020-04-01 15:21:31 -04:00
parent 0da9b02e94
commit 49ebdaa1ec
45 changed files with 244 additions and 238 deletions

35
src/express/middleware.js Normal file
View File

@@ -0,0 +1,35 @@
const express = require('express');
const passport = require('passport');
const compression = require('compression');
const bodyParser = require('body-parser');
const methodOverride = require('method-override');
const localizationMiddleware = require('../localization/middleware');
const middleware = (config) => {
return [
passport.initialize(),
passport.session(),
express.json(),
methodOverride('X-HTTP-Method-Override'),
express.urlencoded({ extended: true }),
bodyParser.urlencoded({ extended: true }),
compression(config.compression),
localizationMiddleware(config.localization),
(req, res, next) => {
if (config.cors) {
if (config.cors.indexOf(req.headers.origin) > -1) {
res.setHeader('Access-Control-Allow-Origin', req.headers.origin);
res.header('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS');
}
res.header('Access-Control-Allow-Headers',
'Origin X-Requested-With, Content-Type, Accept, Authorization');
res.header('Content-Language', config.localization.locale);
}
next();
},
];
};
module.exports = middleware;