Точка входа в Nest
Пусть сервер уже запущен. Порт открыт, страница отвечает, но не видно, какой файл получает управление в момент старта.
Точка входа - файл, который
NodeJS выполняет первым. В Nest
им обычно служит main.ts
в папке src.
Отсюда создаётся экземпляр приложения,
подключается корневой модуль и
открывается порт для запросов.
Функция bootstrap собирает
приложение из класса AppModule
и вызывает метод listen.
Порт берётся из переменной
PORT. Если переменной нет,
остаётся число 3000.
Импорт соседнего файла заканчивается
на .js, хотя исходник имеет
расширение .ts. Проект собран
как ESM, и NodeJS при запуске ищет уже
собранные файлы с суффиксом
.js.
Откроем main.ts:
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module.js';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
await app.listen(process.env.PORT ?? 3000);
}
await bootstrap();
Сделайте так, чтобы приложение
слушало порт 4000, если
своя переменная порта не задана.