Serialization
NestJS 🟡 MidDéfinition
Transformation des objets en réponse JSON via ClassSerializerInterceptor et class-transformer. Permet d'exclure des champs sensibles avec @Exclude.
Analogie
Comme un filtre photo qui masque les informations sensibles avant de publier.
Exemple de code
export class UserEntity {
id: number;
email: string;
@Exclude()
password: string;
constructor(partial: Partial<UserEntity>) {
Object.assign(this, partial);
}
}
Cas d'usage
Masquer les mots de passe, tokens internes et données sensibles des réponses API.
Anti-pattern
Termes liés
En entretien
Comment tu empêcherais qu'un mot de passe se retrouve dans une réponse API ?
En utilisant ClassSerializerInterceptor avec class-transformer, et en décorant le champ password avec @Exclude() dans l'entité, comme un filtre photo qui masque les informations sensibles avant de publier. Ça transforme automatiquement l'objet en JSON en enlevant les champs exclus.
Pourquoi ne pas juste retourner l'entité brute de la base de données ?
Parce que c'est l'anti-pattern identifié : retourner les entités brutes sans filtrage expose des données sensibles comme les mots de passe ou tokens internes. La sérialisation sert justement à masquer ces champs avant l'envoi de la réponse.
Fiche mise à jour le 2026-09-27