@UsePipes() & ValidationPipe este o componentă esențială în ecosistemul NestJS. Transformarea automată a tipurilor și validarea strictă a DTO-urilor folosind pachetul class-validator.
Sintaxă și Utilizare Practică
Exemplu practic documentat pas cu pas:
// În main.ts sau la nivel de controller:
app.useGlobalPipes(new ValidationPipe({
whitelist: true, // Elimină proprietățile netipizate
forbidNonWhitelisted: true, // Aruncă eroare la câmpuri necunoscute
transform: true
}));
Bune Practici în Producție
- Arhitectură și Tipizare: Folosiți DTO-uri, validare strictă și principii de decuplare (Inversion of Control).
- Performanță: Evitați interogările N+1, folosiți mecanisme de caching și rute asincrone unde este cazul.
- Securitate: Validați întotdeauna datele de intrare și aplicați filtre de autorizare pe toate endpoint-urile sensibile.