
Middleware et Interceptors
Middleware, interceptors, opérateurs RxJS, transformation requête/réponse, caching
1Qu'est-ce qu'un middleware dans NestJS ?
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.
2Qu'est-ce qu'un interceptor dans NestJS ?
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.
3Quelle est la principale différence entre un middleware et un interceptor ?
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.
Dans quel ordre s'exécutent les composants dans NestJS ?
Comment appliquer un middleware globalement dans NestJS ?
+17 questions d'entretien
Autres sujets d'entretien Node.js / NestJS
Fondamentaux Node.js
APIs Core Node.js
Programmation asynchrone
Bases Express.js
Fondamentaux NestJS
Conception d'API REST
Validation et DTO
Documentation d'API
Gestion des erreurs
Tests unitaires
Planification de tâches
Modules et DI NestJS
Configuration et environnements
Authentification JWT
Autorisation et RBAC
Base de données avec TypeORM
Prisma ORM
Upload de fichiers
WebSockets
GraphQL avec NestJS
Tests end-to-end
Cache avec Redis
Files d'attente avec Bull
DevOps, Logging et CI/CD
Docker et Containerization
Microservices
Bonnes pratiques de sécurité
Performance et Déploiement Cloud
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