express-ajv-middleware

Express middleware that validates user input (body, query, params, headers)

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
express-ajv-middleware
912.0.3a year ago6 years agoMinified + gzip package size for express-ajv-middleware in KB

Readme

Build Status
express-ajv
Express middleware that helps validating user input

What

A simple middleware for your expressjs routes that accepts JSON schemas and uses AJV under the hood to validate request payload (querystring, body, headers and params)

Why

  • Express validator is good for websites imho, not complex apis
  • JSON schema is good and can model anything in your project, this is good for orgs where you have multiple services
  • AJV is fast and it just works

How?

npm i express-ajv-middleware
const { validateRoute } = require('express-ajv-middleware')

// setup your express app

const validatePostFoo = validateRoute({
   body: {
        type: 'object',
        properties: {
            'bar': { type: 'integer' },
            'baz': { type: 'string' }
        },
        required: ['bar']
   }
})

app.post('/foo', validatePostFoo, (req,res,next) => {
    // Do your thing here
})