const config = require('./config') , express = require("express") , expressLogging = require("express-logging") , logger = require("logops") , { StatusCodes, getStatusText } = require('http-status-codes') , hostname = require('os').hostname() , port = 32108 , controllers = require('./src/controller'); process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = 0; /** * Express web server starting * */ logger.getContext = function getContext() { return { // hostname: hostname, // pid: process.pid, // port: port, app: 'External' }; } var app = express(); app.use(express.json()); app.use(expressLogging(logger)); app.use((req, res, next) => { // logger.debug(Object.assign(req.body, req.query, req.params), 'Request params') next() }) app.listen(port, () => { logger.info('Service started') }); /** * Request handlers * */ app.all('*', (req, res, next) => { let urlSegments = req.url.split('/'); req.params.service = urlSegments[1] req.params.what = urlSegments.length > 2 ? urlSegments[2] : '' req.params.args = urlSegments.length > 3 ? urlSegments.slice(3) : [] if (controllers.hasOwnProperty(req.params.service)) { controllers[req.params.service][req.params.service](req, result => { let body = { code: StatusCodes.OK, message: getStatusText(StatusCodes.OK), data: result } if (result.code) body = result res.json(body) }) } else { res.json({ code: StatusCodes.NOT_FOUND, message: getStatusText(StatusCodes.NOT_FOUND) }) } })