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

Неверный запрос в Nest

Тело запроса приходит с пустым названием, а метод всё равно кладёт запись в список. Клиент не понимает, что поле обязательно, пока данные уже испорчены.

BadRequestException сразу отвечает кодом «неверный запрос». Проверку делают до изменения списка: пустая строка или пробелы - повод прервать метод с понятным текстом.

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

import { BadRequestException, Body, Controller, Post, } from '@nestjs/common'; @Controller('posts') export class PostController { private posts: { id: string; title: string }[] = []; @Post() createPost(@Body() body: { title: string }) { if (!body.title.trim()) { throw new BadRequestException('Title is empty'); } const item = { id: String(this.posts.length + 1), title: body.title, }; this.posts.push(item); return item; } }

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

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

Примите нового работника по телу запроса в контроллере WorkerController. Если имя пустое, прервите метод отказом «неверный запрос». Подключите контроллер к корневому модулю.

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