Маршрут GET в Nest
Пусть корень сайта уже отвечает короткой фразой, а у списка по своему адресу нет страницы. Читатель набирает путь или переходит по ссылке и ждёт её. Браузер отправляет запрос, но правила для этого пути нет, и открыть нечего: приложение не знает, какой код должен ответить.
Когда страницу открывают в браузере, запрос просит данные показать. Такой запрос называют GET. Он ничего не пишет и не меняет на сервере: клиент хочет прочитать то, что уже есть. Списку этот способ подходит: страница только показывает записи.
Фреймворк сам не угадывает, какой метод вызвать. Ему нужно правило из трёх частей: путь, способ запроса и метод класса. Путь отличает список от корня сайта. Способ запроса говорит, что это чтение, а не другое действие. Метод готовит ответ, и то, что он возвращает, видит клиент.
Правило чтения ставят декоратором
Get на методе контроллера. В нём
пишут путь - кусок адреса после корня.
Класс ещё нужно указать в модуле, иначе
файл с методом останется в стороне
и адрес по-прежнему будет пустым.
Покажем на примере списка постов.
Создадим контроллер и повесим список
на отдельный адрес:
import { Controller, Get } from '@nestjs/common';
@Controller()
export class PostController {
@Get('posts')
getPosts(): string {
return 'All posts';
}
}
Путь задан на методе, а ответом становится короткая фраза про посты. Класс сам по себе ещё не входит в приложение, поэтому подключим его в корневом модуле:
import { Module } from '@nestjs/common';
import { PostController } from './post.controller.js';
@Module({
controllers: [PostController],
})
export class AppModule {}
Создайте контроллер WorkerController,
который отвечает по адресу работников,
и подключите его к корневому модулю.