Pipe
NestJS 🟡 MidDéfinition
Classe implémentant PipeTransform qui valide ou transforme les données entrantes avant qu'elles atteignent le handler. Fonctionne avec class-validator.
Analogie
Comme un filtre a eau : l'eau (données) passe a travers et seule l'eau propre (valide) continue.
Exemple de code
@Injectable()
export class ParseIntPipe implements PipeTransform {
transform(value: string): number {
const val = parseInt(value, 10);
if (isNaN(val)) throw new BadRequestException('Not a number');
return val;
}
}
Cas d'usage
Valider les DTOs entrants avec class-validator ou transformer les paramètrès de route.
Anti-pattern
Termes liés
En entretien
Explique-moi ce qu'est un Pipe dans NestJS.
C'est une classe implémentant PipeTransform qui valide ou transforme les données entrantes avant qu'elles atteignent le handler, souvent combinée avec class-validator. On l'utilise pour valider les DTOs entrants ou transformer les paramètres de route.
Quel anti-pattern voit-on souvent dans les controllers ?
Valider manuellement les données dans le controller au lieu d'utiliser ValidationPipe avec des DTOs, ce qui duplique la logique de validation partout. Un Pipe centralisé, comme un filtre à eau, ne laisse passer que les données valides.
Dans l'actu
- 19/10 NestJS 12.2.0 ajoute des garde-fous contre les clients lents ou abusifs : limite… Changements de comportement : parsing des formulaires Express/Fastify limité en profondeur (32) et en index de tableau (1000), et ValidationPipe ne remplit plus error.target par défaut. Semaine 43 (1re moitié) · 19 – 21 octobre 2026 →
Fiche mise à jour le 2026-09-27