Controller

NestJS 🟢 Junior

Définition

Classe décorée @Controller qui gère les requêtes HTTP entrantes et retourne les réponses. Chaque méthode est mappee a une route via des décorateurs HTTP.

Analogie

Comme un réceptionniste d'hôtel : il reçoit les demandes des clients et les redirigé vers le bon service.

Exemple de code

@Controller('users')
export class UserController {
  constructor(private userService: UserService) {}

  @Get(':id')
  findOne(@Param('id') id: string) {
    return this.userService.findOne(id);
  }
}

Cas d'usage

Définir les endpoints REST de l'API et déléguer la logique métier aux services.

Anti-pattern

Mettre de la logique métier dans le controller au lieu de la déléguer au service.
#core#interview

En entretien

  1. C'est quoi le rôle d'un Controller dans NestJS ?

    C'est une classe décorée @Controller qui reçoit les requêtes HTTP entrantes et retourne les réponses, chaque méthode étant mappée à une route via un décorateur HTTP. C'est un peu le réceptionniste d'hôtel qui redirige la demande vers le bon service.

  2. Pourquoi c'est un problème de mettre la logique métier dans le controller ?

    Parce que le controller est censé juste orienter la requête, pas faire le travail lui-même. Il faut déléguer la logique métier au service pour garder le code testable et bien séparé.

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre