node-swagger-middleware
TypeScript icon, indicating that this package has built-in type declarations

2.4.1 • Public • Published

node-swagger-middleware

codecov Build Status npm version Conventional Commits

Project on top of sway and swagger-combine to provide middleware for express request/response validate

Installation

yarn add node-swagger-middleware

Example Usage

Express Example App

const express = require("express")
const swaggerCombine = require("swagger-combine")
const {
  createExpressMiddleware,
  ValidationError 
= require("node-swagger-middleware")
 
createExpressApp = async () => {
  const app = express()
  const swaggerFile = await swaggerCombine(`${__dirname}/swagger/index.yml`)
  app.use(express.json())
  app.use(await createExpressMiddleware(swaggerFile))
  app.use((err, req, res, next) => {
    if (err instanceof ValidationError) {
      res.status(400)
    } else {
      res.status(500)
    }
    res.send({
      err
    })
  })
  return app
}

TODO

Support default value, type casing on request parameters

Readme

Keywords

none

Package Sidebar

Install

npm i node-swagger-middleware

Weekly Downloads

0

Version

2.4.1

License

MIT

Unpacked Size

39.8 kB

Total Files

25

Last publish

Collaborators

  • davidnhk