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.

Installation

Requires @marblejs/core to be installed.

Importing

Type declaration

Parameters

parameter

definition

schema

Schema

options

<optional> Joi.ValidationOptions (see: Joi API reference)

Schema

parameter

definition

headers

<optional> any

params

<optional> any

query

<optional> any

body

<optional> any

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