Request and Response validator for OpenAPI Specification 3.
npm install --save koa-oas3
yarn add koa-oas3
The library would expect request body to be parsed under ctx.request.body
. You can use koa-bodyparser
package for that.
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);
file
- The absolute path to your Openapi filespec
- javascript object defining the api, either this orfile
must be given.enableUi
(default: true) - Whether to enable serving Openapi JSON and UIendpoint
(default: /openapi.json) - The endpoint for serving Openapi JSONuiEndpoint
:(default: /openapi.html) - The endpoint for serving Openapi UIvalidateResponse
:(default: false) - Validate response against Openapi schemasvalidatePaths
:(default ['/']) - Only endpoints starting with the values specified here will be validatedswaggerUiBundleBasePath
: (default use swagger-ui-dist from unpkg) - swaggerUiAssetPath needed for loading the swagger-uierrorHandler: (error: Error, ctx: Context) => void,
: Optional - custom error hanlder.