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