koa-oas3
Request and Response validator for OpenAPI Specification 3.
Last updated 2 months ago by supertong .
Apache-2.0 · Original npm · Tarball · package.json
$ cnpm install koa-oas3 
SYNC missed versions from official npm registry.

koa-oas3

Request and Response validator for OpenAPI Specification 3.

Installation

npm

npm install --save koa-oas3

yarn

yarn add koa-oas3

API

By default, this library will use koa-bodyparser to parse request body. See config of requestBodyHandler.

import * as bodyParser from 'koa-bodyparser';
import { oas } from 'koa-oas3';

const app = new Koa();
app.use(bodyParser());
app.use(oas({
  file: `${__dirname}/../openapi.yaml`,
  endpoint: '/openapi.json',
  uiEndpoint: '/'
}));

app.listen(8080);

oas(option)

options:

  • file - The absolute path to your Openapi file
  • spec - javascript object defining the api, either this or file must be given.
  • enableUi(default: true) - Whether to enable serving Openapi JSON and UI
  • endpoint(default: /openapi.json) - The endpoint for serving Openapi JSON
  • uiEndpoint:(default: /openapi.html) - The endpoint for serving Openapi UI
  • validateResponse:(default: false) - Validate response against Openapi schemas
  • validatePaths:(default ['/']) - Only endpoints starting with the values specified here will be validated
  • swaggerUiBundleBasePath: (default use swagger-ui-dist from unpkg) - swaggerUiAssetPath needed for loading the swagger-ui
  • errorHandler: (error: Error, ctx: Context) => void,: Optional - custom error hanlder.
  • requestBodyHandler: { [key: string]: koa.Middleware }: Optional - custom body handler. Defaults:
{
  'application/json': bodyParser({
    extendTypes: {
      json: ['application/json']
    },
    enableTypes: ['json']
  }),
  'text/*': bodyParser({
    extendTypes: {
      text: ['text/*']
    },
    enableTypes: ['text']
  }),
  'application/x-www-form-urlencoded': bodyParser({
    extendTypes: {
      form: ['application/x-www-form-urlencoded']
    },
    enableTypes: ['form']
  })
}

Current Tags

  • 0.18.0                                ...           latest (2 months ago)

35 Versions

  • 0.18.0                                ...           2 months ago
  • 0.17.1                                ...           2 months ago
  • 0.17.0                                ...           2 months ago
  • 0.16.1                                ...           2 months ago
  • 0.16.0                                ...           2 months ago
  • 0.15.0                                ...           4 months ago
  • 0.13.1                                ...           10 months ago
  • 0.13.0                                ...           10 months ago
  • 0.12.0                                ...           a year ago
  • 0.11.0                                ...           a year ago
  • 0.10.0                                ...           a year ago
  • 0.9.0                                ...           a year ago
  • 0.8.1                                ...           a year ago
  • 0.8.0                                ...           a year ago
  • 0.7.0                                ...           a year ago
  • 0.6.5                                ...           a year ago
  • 0.6.4                                ...           2 years ago
  • 0.6.3                                ...           2 years ago
  • 0.6.1                                ...           2 years ago
  • 0.6.2                                ...           2 years ago
  • 0.5.3                                ...           2 years ago
  • 0.5.2                                ...           2 years ago
  • 0.5.1                                ...           2 years ago
  • 0.5.0                                ...           2 years ago
  • 0.4.1                                ...           2 years ago
  • 0.3.0                                ...           2 years ago
  • 0.2.1                                ...           2 years ago
  • 0.1.8                                ...           2 years ago
  • 0.1.7                                ...           2 years ago
  • 0.1.6                                ...           2 years ago
  • 0.1.5                                ...           2 years ago
  • 0.1.4                                ...           2 years ago
  • 0.1.3                                ...           2 years ago
  • 0.1.2                                ...           2 years ago
  • 0.1.1                                ...           2 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 55
Dependencies (7)
Dev Dependencies (12)
Dependents (0)
None

Copyright 2014 - 2017 © taobao.org |