diff --git a/packages/backend/src/app.ts b/packages/backend/src/app.ts index 62d37f08..e5413b01 100644 --- a/packages/backend/src/app.ts +++ b/packages/backend/src/app.ts @@ -1,5 +1,6 @@ import createError from 'http-errors'; import express from 'express'; +import appConfig from './config/app'; import cors from 'cors'; import corsOptions from './config/cors-options'; import morgan from './helpers/morgan'; @@ -26,6 +27,7 @@ appAssetsHandler(app); app.use(morgan); app.use( express.json({ + limit: appConfig.requestBodySizeLimit, verify(req, res, buf) { (req as IRequest).rawBody = buf; }, @@ -33,6 +35,7 @@ app.use( ); app.use(express.urlencoded({ extended: false, + limit: appConfig.requestBodySizeLimit, verify(req, res, buf) { (req as IRequest).rawBody = buf; }, diff --git a/packages/backend/src/config/app.ts b/packages/backend/src/config/app.ts index 6e007277..4f30aab6 100644 --- a/packages/backend/src/config/app.ts +++ b/packages/backend/src/config/app.ts @@ -31,6 +31,7 @@ type AppConfig = { bullMQDashboardUsername: string; bullMQDashboardPassword: string; telemetryEnabled: boolean; + requestBodySizeLimit: string; }; const host = process.env.HOST || 'localhost'; @@ -89,6 +90,7 @@ const appConfig: AppConfig = { webAppUrl, webhookUrl, telemetryEnabled: process.env.TELEMETRY_ENABLED === 'false' ? false : true, + requestBodySizeLimit: '1mb', }; if (!appConfig.encryptionKey) { diff --git a/packages/backend/src/routes/webhooks.ts b/packages/backend/src/routes/webhooks.ts index 2a66acbb..cdf8f705 100644 --- a/packages/backend/src/routes/webhooks.ts +++ b/packages/backend/src/routes/webhooks.ts @@ -1,6 +1,7 @@ import express, { Router } from 'express'; import multer from 'multer'; import { IRequest } from '@automatisch/types'; +import appConfig from '../config/app'; import webhookHandler from '../controllers/webhooks/handler'; const router = Router(); @@ -9,6 +10,7 @@ const upload = multer(); router.use(upload.none()); router.use(express.text({ + limit: appConfig.requestBodySizeLimit, verify(req, res, buf) { (req as IRequest).rawBody = buf; },