NestJS — популярная платформа для создания масштабируемых и удобных в обслуживании серверных приложений на Node.js. Он обеспечивает мощную модульную архитектуру, а одним из ключевых компонентов NestJS являются контроллеры. Контроллеры обрабатывают входящие запросы, обрабатывают их и возвращают соответствующие ответы. В этой статье мы рассмотрим различные методы создания контроллеров в NestJS, сопровождаемые примерами кода.
Метод 1: использование CLI NestJS
NestJS предоставляет интерфейс командной строки (CLI), который упрощает создание контроллеров. Откройте терминал и выполните следующую команду:
$ nest generate controller <name>
Замените желаемым именем вашего контроллера. CLI создаст новый файл контроллера в соответствующем каталоге вместе с соответствующим файлом модульного теста.
Метод 2: Создание вручную
В качестве альтернативы вы можете создавать контроллеры вручную. Начните с создания нового файла TypeScript с расширением .controller.ts. Внутри файла импортируйте необходимые зависимости:
import { Controller, Get, Post, Body } from '@nestjs/common';
Далее определите класс контроллера с помощью декоратора @Controller:
@Controller('example') // Replace 'example' with your desired route prefix
export class ExampleController {
// Controller methods will be defined here
}
Метод 3: обработка HTTP-запросов GET
Для обработки GET-запросов используйте декоратор @Get()и определите метод:
@Get()
findAll(): string {
return 'This is a GET request';
}
Метод 4: обработка HTTP-запросов POST
Для обработки POST-запросов используйте декоратор @Post()и определите метод:
@Post()
create(@Body() data: any): string {
// Process the data
return 'This is a POST request';
}
Метод 5: параметры пути
Вы также можете определить контроллеры, которые обрабатывают запросы с параметрами пути. Просто добавьте параметр в метод и украсьте его @Param():
@Get(':id')
findOne(@Param('id') id: string): string {
// Retrieve the specified resource
return `This is a GET request for ID: ${id}`;
}
В этой статье мы рассмотрели различные методы создания контроллеров в NestJS. Мы рассмотрели подход CLI, создание вручную, обработку запросов GET и POST, а также использование параметров пути. Используя эти методы, вы можете эффективно создавать надежные API в NestJS. Поэкспериментируйте с приведенными примерами кода, чтобы глубже понять реализацию контроллера.