@Get/@Post/@Put/@Delete/@Patch

NestJS 🟢 Junior

Définition

Décorateurs de méthode qui mappent les méthodes HTTP aux handlers du controller. Chacun définit le verbe HTTP et le chemin optionnel de la route.

Analogie

Comme les panneaux directionnels dans un aéroport : chacun oriente vers la bonne porte d'embarquement.

Exemple de code

@Controller('items')
export class ItemController {
  @Get() findAll() { /* ... */ }
  @Post() create(@Body() dto: CreateItemDto) { /* ... */ }
  @Put(':id') update(@Param('id') id: string) { /* ... */ }
  @Delete(':id') remove(@Param('id') id: string) { /* ... */ }
}

Cas d'usage

Définir les opérations CRUD standard sur une ressource REST.

Anti-pattern

Utiliser @Post pour des opérations de lecture ou @Get avec un body de requête.

Termes liés

#core#interview

En entretien

  1. Explique-moi à quoi servent les décorateurs @Get, @Post, @Put, @Delete.

    Ce sont des décorateurs de méthode qui mappent chaque verbe HTTP et son chemin optionnel à un handler du controller, comme les panneaux directionnels d'un aéroport qui orientent vers la bonne porte d'embarquement.

  2. Quel est le piège classique dans leur utilisation ?

    Utiliser @Post pour une opération de lecture, ou @Get avec un body de requête : ça casse la sémantique REST attendue par les clients et les intermédiaires HTTP.

Fiche mise à jour le 2026-09-27

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