1.0.2 • Published 4 years ago

@ashok.patel0609/restful-express-server v1.0.2

Weekly downloads
-
License
ISC
Repository
github
Last release
4 years ago

rest-server


Usage

  • Install package npm install @ashok.patel0609/restful-express-server
  • Create an .env file with configs. (list below)
  • Require const {loadConfig, RestServer} = require('@ashok.patel0609/restful-express-server');
  • Creating instance
// Load configurations or create custom object
const config = loadConfiguration();

// Create a server instance
const server = new RestfulExpressServer(config);

//  Load all middle-wares required for rest API development
server.pre();

// router group
let router = server.router();

// bind some routes
router.get('/ashok', (req, res) => {
    res.send({
        now: (Date.now()),
        ashok: true
    })
});
// binding any router
// or middleware
server.use(router);

// bind 404, exception handling, terminating middle-ware and start listening.
server.post().terminating().listen();

Supported config variables

  • BODY_SIZE_LIMIT, Default: '100kb'
  • DEFAULT_ERROR_MESSAGE, Default: 'Some error occured'
  • logger, Default: console
  • injectException, Default: () => {}
  • PORT, Default: 5000

Silent features

  • Correlation id logging on exception.
  • Helmet initialized by default.
  • Compression & JSON Body parsing.
  • CORS enabled.
  • Support for overriding logger.
  • Support for injecting Custom Exception handler.