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.
Fiche mise à jour le 2026-09-27