РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗jsnsPmExTE 94 of 168 menu
◀ ▶

Выброс исключения в Nest

Условие в методе не выполняется, а вернуть пустую строку нельзя: клиент примет её за успех. Нужно явно остановить обработку и отдать отказ.

Оператор throw передаёт управление фреймворку. Объект HttpException несёт текст для тела и значение из HttpStatus для числа ответа. После выброса код метода ниже не выполняется.

Покажем на примере постов:

import { Controller, Get, HttpException, HttpStatus, } from '@nestjs/common'; @Controller('posts') export class PostController { @Get('draft') openDraft(): string { throw new HttpException( 'Draft is not ready', HttpStatus.BAD_REQUEST, ); } }

Контроллер регистрируем в корневом модуле:

import { Module } from '@nestjs/common'; import { PostController } from './post.controller.js'; @Module({ controllers: [PostController], }) export class AppModule {}

Сделайте маршрут в контроллере WorkerController, который прерывает работу общим HTTP-исключением с текстом отказа и кодом «неверный запрос», и подключите контроллер к корневому модулю.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить