UNPKG

openapi-validator-middleware

Version:

Fast input validation middleware using OpenAPI 2.0 (formerly Swagger) and 3.0 definitions file and ajv

26 lines (21 loc) 812 B
const getRequestFiles = require('../utils/requestFilesExtractor'); function getValidator(validateRequest) { return function validate(req, res, next) { const requestOptions = _getParameters(req); const errors = validateRequest(requestOptions); next(errors); }; } function _getParameters(req) { const requestOptions = {}; const path = req.baseUrl.concat(req.route.path); requestOptions.path = path.endsWith('/') ? path.substring(0, path.length - 1) : path; requestOptions.headers = req.headers; requestOptions.params = req.params; requestOptions.query = req.query; requestOptions.method = req.method; requestOptions.body = req.body; requestOptions.files = getRequestFiles(req); return requestOptions; } module.exports = { getValidator };