| 12345678910111213141516171819202122232425 |
- import { ErrorV3 } from '@growi/core/dist/models';
- import { NextFunction, Request, Response } from 'express';
- import loggerFactory from '~/utils/logger';
- const logger = loggerFactory('growi:middlewares:ApiV3FormValidator');
- const { validationResult } = require('express-validator');
- export const apiV3FormValidator = (req: Request, res: Response & { apiv3Err }, next: NextFunction): void => {
- logger.debug('req.query', req.query);
- logger.debug('req.params', req.params);
- logger.debug('req.body', req.body);
- const errObjArray = validationResult(req);
- if (errObjArray.isEmpty()) {
- return next();
- }
- const errs = errObjArray.array().map((err) => {
- logger.error(`${err.location}.${err.param}: ${err.value} - ${err.msg}`);
- return new ErrorV3(`${err.param}: ${err.msg}`, 'validation_failed');
- });
- return res.apiv3Err(errs);
- };
|