UNPKG

ready-to-go-node-template

Version:

A node boilerplate template with built-in support for socket and MongoDB using Mongoose.

26 lines (22 loc) 739 B
import Joi from 'joi'; import { responseHandler } from '../../../../utils/response-handler'; Joi.objectId = require('joi-objectid')(Joi); class ParamsValidator { constructor() { this.schema = Joi.objectId().required().error(new Error("Please provide a proper id")); } validate = (req, res, next) => { try { const { error } = this.schema.validate(req.params.id); if (!error) { next(); } else { return responseHandler.errorResponse(res, {}, error.message, 400); } } catch (err) { console.error(err); responseHandler.errorResponse(res, err); } }; } export default new ParamsValidator();