Skip to content

Latest commit

 

History

History
43 lines (30 loc) · 1.35 KB

README.md

File metadata and controls

43 lines (30 loc) · 1.35 KB

cds-swagger-ui-express

An express middleware to serve OpenAPI definitions for CAP services in Swagger UI. Builds on top of swagger-ui-express.

Preview

Installation

In your project, execute

npm install --save-dev cds-swagger-ui-express

Usage

Have this in your server.js:

const cds = require ('@sap/cds')
module.exports = cds.server

if (process.env.NODE_ENV !== 'production') {
  const cds_swagger = require ('cds-swagger-ui-express')
  cds.on ('bootstrap', app => app.use (cds_swagger()) )
}

Swagger UI is then served on /$api-docs/<service-path>, like http://localhost:4004/$api-docs/browse/

Configuration

Call cds_swagger ({...}) with the following object:

{
  "basePath": "/$api-docs", // the root path to mount the middleware on
  "diagram": "true" // whether to render the YUML diagram
}

Notes

If you call cds.serve on your own in your server.js, make sure to install this middleware before, as it relies on CDS' serving events.