36-7 Exclure le mot de passe du retour
Dans l'état actuel, le mot de passe de l'utilisateur est retourné dans la réponse JSON. Évidemment, on ne veut pas retourner cette information.
Ainsi, nous pouvons ajouter un décorateur sur la propriété mot de passe de l'entité indiquant qu'on désire exclure cette propriété du retour.
src/utilisateurs/entities/utilisateur.entity.ts
//...
@Column()
@Exclude()
password: string;
//...
Pour ensuite préciser les actions de contrôleur qui prendront en compte l'exclusion, on doit le mentionner directement via @UseInterceptors(ClassSerializerInterceptor):
src/utilisateurs/utilisateurs.controller.ts
//...
@ApiCreatedResponse({
type: Utilisateur,
})
@Post()
@UseInterceptors(ClassSerializerInterceptor)
async create(@Body() createUtilisateurDto: CreateUtilisateurDto) {
return this.utilisateursService.create(createUtilisateurDto);
}
//...
De cette façon, pour la fonction de création dans le contrôleur spécifiquement, le mot de passe sera exclu du retour.
Vous pouvez essayer une création d'utilisateur.