X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fmiddlewares%2Fvalidators%2Fshared%2Futils.ts;h=f39128fddd8da8e6c240136991aa32e591b11ee5;hb=8ca52bcc2c37d457e8b19a237c66b8dd1c00b6b9;hp=8e451a24c133ad6d9e7951b63852491e9dcc8c41;hpb=9593a78ae1368a9ad8bb11044fce6fde2892701a;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/middlewares/validators/shared/utils.ts b/server/middlewares/validators/shared/utils.ts index 8e451a24c..f39128fdd 100644 --- a/server/middlewares/validators/shared/utils.ts +++ b/server/middlewares/validators/shared/utils.ts @@ -1,13 +1,39 @@ import express from 'express' -import { param, query, validationResult } from 'express-validator' +import { param, validationResult } from 'express-validator' import { isIdOrUUIDValid, toCompleteUUID } from '@server/helpers/custom-validators/misc' import { logger } from '../../../helpers/logger' -function areValidationErrors (req: express.Request, res: express.Response) { +function areValidationErrors ( + req: express.Request, + res: express.Response, + options: { + omitLog?: boolean + omitBodyLog?: boolean + tags?: string[] + } = {}) { + const { omitLog = false, omitBodyLog = false, tags = [] } = options + + if (!omitLog) { + logger.debug( + 'Checking %s - %s parameters', + req.method, req.originalUrl, + { + body: omitBodyLog + ? 'omitted' + : req.body, + params: req.params, + query: req.query, + files: req.files, + tags + } + ) + } + const errors = validationResult(req) if (!errors.isEmpty()) { logger.warn('Incorrect request parameters', { path: req.originalUrl, err: errors.mapped() }) + res.fail({ message: 'Incorrect request parameters: ' + Object.keys(errors.mapped()).join(', '), instance: req.originalUrl, @@ -25,13 +51,13 @@ function areValidationErrors (req: express.Request, res: express.Response) { function isValidVideoIdParam (paramName: string) { return param(paramName) .customSanitizer(toCompleteUUID) - .custom(isIdOrUUIDValid).withMessage('Should have a valid video id') + .custom(isIdOrUUIDValid).withMessage('Should have a valid video id (id, short UUID or UUID)') } function isValidPlaylistIdParam (paramName: string) { return param(paramName) .customSanitizer(toCompleteUUID) - .custom(isIdOrUUIDValid).withMessage('Should have a valid playlist id') + .custom(isIdOrUUIDValid).withMessage('Should have a valid playlist id (id, short UUID or UUID)') } // ---------------------------------------------------------------------------