e-joi
Joi middleware for express
Getting Started
Recommended Joi version
: > 13.0.0
$ npm install e-joi
Usage
const Joi = ;const eJoi = ; const schema = headers: Joiobject; app;
API
eJoi(schema[, callback])
eJoi(schema, options[, callback])
// Joi validate optionsconst options = convert: false ; app; // callback handling with eJoi optionsconst callback = eJoi; app; // custom callback handlingconst customCallback = ; app;
Options (for handling eJoi.callback)
nextRoute
: whentrue
, pass control to the next route. Defaults tofalse
.override
: override the defined request properties. Defaults totrue
.- when
true
, Override the properties. - when
false
, Not override. - when
array
, Override the properties of the array element. - when
string
, Override the properties of the string.
- when
// next routeconst callback = eJoi; // response 'enjoy!'app;app;
// override `false`const callback = eJoi;// override headers and paramsconst callback = eJoi;// override bodyconst callback = eJoi;
Custom callback
fn(req, res, next, result)
This function returns a Promise-like object that can be used as a promise, or as a simple object like.
Please refer to the Joi API Reference
Promise-like is supported from Joi version 12.0.0 or later.
const myCallback = { const error value = result; if error return ; // do something using value... ;}; // or const myCallback = { promise // do something using value... ;}; // if promise-like is not supported const myCallback = { eJoi; promise // do something using value... ;}; // route exampleapp;