middleware-joi
A Joi validation middleware for Marble.js.
Joi is an object schema description language and validator for JavaScript objects. Using its schema language, you can validate things like:
HTTP request headers
HTTP body parameters
HTTP request query parameters
URL parameters
You can find detailed API reference for Joi schemas here.
For more advanced request or event validation purposes we highly recommend to use @marblejs/middleware-io package instead. It can better handle type inference for complex schemas.
Installation
Requires @marblejs/core
to be installed.
Importing
Type declaration
Parameters
parameter | definition |
schema |
|
options |
Schema
parameter | definition |
headers | <optional> |
params | <optional> |
query | <optional> |
body | <optional> |
Usage
1. Example of using middleware on a GET route to validate query parameters:
Example above will validate each incoming request connected with foo$
Effect. The validation blueprint defines that the id
query parameter should be a number between <1..10>. If the schema requirements are not satisfied the middleware will throw an error with description what went wrong.
2. Example of validating all incoming requests:
Credits
Middleware author: Lucio Rubens
Last updated