0.0.2 • Published 6 years ago

express-openapi-router v0.0.2

Weekly downloads
1
License
MIT
Repository
github
Last release
6 years ago

express-openapi-router Build Status codecov

This router will allow you to route controllers based on the operationId inside your OpenAPI 3.0 spec file. The usage is very similar to the default Express JS Router.

Install

$ npm install express-openapi-router

Usage

Tests and examples use the official Petstore example spec: https://github.com/OAI/OpenAPI-Specification/blob/master/examples/v3.0/petstore.yaml

Notice the operationId attribute of the endpoint definition inside the spec file:

paths:
  /pets:
    get:
      summary: List all pets
      operationId: listPets

Create a routes.js file that defines your controllers for each operationId in your OpenAPI spec:

const OpenApiRouter = require('express-openapi-router');

const api = new OpenApiRouter(require("path/to/your/openapi.json"));
api.use("listPets", (req, res) => {
   res.send("Here are your pets!");
});

module.exports = api.router; // this attribute contains the actual ExpressJS Router

In your app.js:

const routes = require("routes.js");

app.use(routes);

MIT © Zimmo.be