Сжатие ответа в Nest
Длинный текст или JSON занимают много байт на проводе, и клиент дольше ждёт загрузку страницы. Сервер отдаёт полный объём, хотя браузер умеет принимать сжатый поток.
Сжатие ответа включают
как промежуточный слой Express
после создания приложения и до
запуска прослушивания порта.
Пакет compression сжимает
тело, если клиент прислал
подходящий заголовок запроса.
Покажем на примере постов:
npm install compression
Подключим слой в точке входа рядом с модулем темы:
import { NestFactory } from '@nestjs/core';
import compression from 'compression';
import { AppModule } from './app.module.js';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
app.use(compression());
await app.listen(process.env.PORT ?? 3000);
}
await bootstrap();
Установите пакет сжатия и включите его в точке входа приложения работников до прослушивания порта.