1.0.1 • Published 9 years ago
json-api-validator v1.0.1
JsonSchema API validator
Slightly opinionated view on JsonSchema API validation.
Install
json-api-validator
Proposed usecase
But not limited.
Let's say there is folder structure of json schemas.
api +
\schemas +
\request +
| \pathA
| get.json
| post.json
| put.json
| +
| \subpathA
| get.json
| .... etc ....
\response +
\pathA
get.json
post.json
put.json
+
\subpathA
get.json
.... etc ....This will be possible setup for validator.
api/validator.js
var validator = require('api-validator')({
// from cwd
base: './schemas'
})
// ... and later in the code
var result = validator(jsonToValidate, 'response/pashA/get.json')
// ... do something based on resultSee tests for better examples.
API
This module is a wrapper over the tv4 JsonSchema validator. The result returned from the call is direct pipeline from tv4.validateMultiple method.
There is options you can pass for initiation:
baseroot folder from which schemas will be searched up, default tocwd.globPatternthe pattern used to search schemas, default to/**/*.formatshash of the custom formats fortv4.addFormatmultiple form.
Notes
As of now the all schemas are loaded in the memory, no matter will they be used or not. The lazy loading are considerably on the road map.