koa-json-schema
json schema validation middleware for koajs using AJV.
install
npm install --save koa-json-schema
usage
validate input as
const input = Object.assign({}, ctx.request.query, ctx.request.body, ctx.params);
const koa=require('koa')const {middleware: validator} = require('koa-json-schema') koa() .use(validator(schema, options)) .use(function (ctx){ // do something with safe input });
- schema: a valid json schema
- options: options to pass to AJV
if the input is not valid 422 error is thrown. the validation errors can be found as error.error_description
koa() .use(async function (ctx, next){ try { await next(); } catch(e){ if(e.status === 422){ console.log(e.error_description); } } }) .use(validator(schema, options)) .use(function (ctx){ // do something with safe input });