20 lines
540 B
JavaScript
20 lines
540 B
JavaScript
const validateRequest = (schema) => (req, res, next) => {
|
|
console.log('validateRequest');
|
|
|
|
const options = {
|
|
abortEarly: false, // include all errors
|
|
allowUnknown: true, // ignore unknown props
|
|
stripUnknown: true, // remove unknown props
|
|
};
|
|
const { error, value } = schema.validate(req.body, options);
|
|
if (error) {
|
|
console.log('error: ', error);
|
|
next(`Validation error: ${error.details.map((x) => x.message).join(', ')}`);
|
|
} else {
|
|
req.body = value;
|
|
next();
|
|
}
|
|
};
|
|
|
|
module.exports = validateRequest;
|