Ограничение размера тела в Nest
Клиент может прислать очень большой JSON, и парсер на NodeJS займёт память ещё до того, как контроллер отклонит запрос. Без явного предела тяжёлые тела проходят наравне с короткими.
Ограничение размера тела
задают для JSON в точке входа
через адаптер Express. Метод
useBodyParser принимает
тип json и объект с полем
limit в байтах или строкой
с единицами. Создание приложения
типизируют как NestExpressApplication,
чтобы метод был доступен.
Покажем на примере постов:
import { NestFactory } from '@nestjs/core';
import { NestExpressApplication } from '@nestjs/platform-express';
import { AppModule } from './app.module.js';
async function bootstrap() {
const app =
await NestFactory.create<NestExpressApplication>(AppModule);
app.useBodyParser('json', { limit: '10kb' });
await app.listen(process.env.PORT ?? 3000);
}
await bootstrap();
Задайте лимит JSON в точке входа
приложения работников, чтобы
слишком большое тело не доходило
до WorkerController.