Node.js / NestJS

Middleware et Interceptors

Middleware, interceptors, opérateurs RxJS, transformation requête/réponse, caching

20 questions d'entretien·
Confirmé
1

Qu'est-ce qu'un middleware dans NestJS ?

Réponse

Un middleware est une fonction qui s'exécute avant le gestionnaire de route. Il a accès aux objets request et response, et peut modifier la requête, la réponse, terminer le cycle requête-réponse, ou passer au middleware suivant avec next(). Les middlewares sont idéaux pour le logging, l'authentification basique, ou la modification des headers. Ils s'exécutent dans l'ordre de leur déclaration.

2

Qu'est-ce qu'un interceptor dans NestJS ?

Réponse

Un interceptor est une classe avec un décorateur @Injectable() qui implémente NestInterceptor. Il permet d'intercepter les requêtes avant et après l'exécution du gestionnaire de route. Grâce à RxJS, il peut transformer le résultat, gérer les erreurs, ajouter du caching, mesurer les performances, ou logger les réponses. Les interceptors offrent plus de contrôle que les middlewares sur le cycle de vie complet.

3

Quelle est la principale différence entre un middleware et un interceptor ?

Réponse

Les middlewares s'exécutent avant le gestionnaire et n'ont pas accès à la réponse finale. Les interceptors utilisent RxJS et peuvent agir avant ET après l'exécution, permettant de transformer la réponse. Les middlewares sont plus simples pour des tâches basiques comme le logging de requêtes, tandis que les interceptors sont plus puissants pour transformer les données, gérer les erreurs, ou implémenter du caching.

4

Dans quel ordre s'exécutent les composants dans NestJS ?

5

Comment appliquer un middleware globalement dans NestJS ?

+17 questions d'entretien

Maîtrise Node.js / NestJS pour ton prochain entretien

Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.

Commencer gratuitement