Configuration Object
Once we have defined all our Joi specs, its time to configure our middleware. Following is a high-level schema of configuration object expected by xpress-req-validator
{
allowUndefinedPaths: true,
sendErrorResponse: false,
specs: {
GET: {},
POST: {},
PUT: {},
DELETE: {},
},
}allowUndefinedPaths
if set to true, middleware will allow undefined routes to pass through
if set to false, middleware will raise an INVALID URL error
default is true
sendErrorResponse
if set to true, middleware will send responses directly with validation errors
if set to false, middleware will pass the validation errors to next middleware
default is false
Error response takes the following shape
{
description: 'request body params validation failed',
errors: [
{
message: '"username" must only contain alpha-numeric characters',
path: ['username'],
context: {
value: 'John Doe',
key: 'username',
label: 'username',
},
},
{
message: '"password" is required',
path: ['password'],
context: {
key: 'password',
label: 'password',
},
},
{
message: '"birthyear" is required',
path: ['birthyear'],
context: {
key: 'birthyear',
label: 'birthyear',
},
},
],
}Last updated
Was this helpful?