Pipe-uri Native de Conversie (ParseIntPipe, ParseUUIDPipe) în NestJS

pipeline NestJS 10.x / TypeScript 5+ Q&A / Distribuie cod

Transformarea și validarea automată a tipurilor de date din parametri de rută: numere întregi, valori booleene, float-uri și chei UUID.

Sintaxă
@Param('id', ParseIntPipe) / @Param('uuid', ParseUUIDPipe)

Parametrii din URL (@Param() sau @Query()) sosesc întotdeauna ca șiruri de caractere (String). Pentru a evita conversia manuală cu parseInt(), NestJS oferă o suită de Pipe-uri native de transformare:

  • ParseIntPipe: Convertește valoarea în number întreg; dacă parametrul conține litere (ex: /users/abc), aruncă automat un HTTP 400 Bad Request.
  • ParseUUIDPipe: Validează că șirul este un UUID conform (v4 sau v5).
  • ParseBoolPipe, ParseFloatPipe, ParseArrayPipe.
Exemplu: Folosirea ParseIntPipe și ParseUUIDPipe în parametri
import { Controller, Get, Param, ParseIntPipe, ParseUUIDPipe } from '@nestjs/common';

@Controller('catalog')
export class CatalogController {
  @Get('items/:id')
  getItem(@Param('id', ParseIntPipe) id: number) {
    // id este garantat de tip number:
    return { itemId: id, type: typeof id };
  }

  @Get('orders/:uuid')
  getOrderByUuid(@Param('uuid', new ParseUUIDPipe({ version: '4' })) uuid: string) {
    return { orderUuid: uuid };
  }
}

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Pipe-uri Native de Conversie (ParseIntPipe, ParseUUIDPipe)

Ai o nelămurire despre utilizarea comenzii Pipe-uri Native de Conversie (ParseIntPipe, ParseUUIDPipe) sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.