
WebSockets
Socket.io, gateways, events, rooms, namespaces, authentication, broadcasting
1Qu'est-ce qu'un WebSocket Gateway dans NestJS ?
Qu'est-ce qu'un WebSocket Gateway dans NestJS ?
Réponse
Un WebSocket Gateway est une classe décorée avec @WebSocketGateway() qui gère les connexions WebSocket et les événements en temps réel. Il agit comme un point d'entrée pour la communication bidirectionnelle entre le serveur et les clients. Les gateways utilisent Socket.io par défaut et permettent de gérer les événements entrants et sortants via des décorateurs comme @SubscribeMessage().
2Quelle bibliothèque NestJS utilise-t-il par défaut pour les WebSockets ?
Quelle bibliothèque NestJS utilise-t-il par défaut pour les WebSockets ?
Réponse
NestJS utilise Socket.io par défaut pour les WebSockets. Socket.io offre des fonctionnalités avancées comme les rooms, namespaces, reconnexion automatique et fallback vers long-polling. Il est possible d'utiliser ws (WebSocket natif) en spécifiant l'adaptateur, mais Socket.io reste le choix recommandé pour la plupart des cas d'usage.
3Comment écouter un événement WebSocket dans un Gateway NestJS ?
Comment écouter un événement WebSocket dans un Gateway NestJS ?
Réponse
Pour écouter un événement, il faut utiliser le décorateur @SubscribeMessage('eventName') sur une méthode du Gateway. La méthode reçoit automatiquement les données émises par le client. Le décorateur gère l'enregistrement de l'événement et permet de retourner une réponse au client ou de broadcaster à plusieurs clients.
Quelle méthode du lifecycle permet d'exécuter du code lorsqu'un client se connecte au Gateway ?
Qu'est-ce qu'une Room dans Socket.io ?
+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
Middleware et Interceptors
Upload de fichiers
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