WebSocket Gateway

NestJS 🟡 Mid

Définition

Classe décorée @WebSocketGateway qui gère les connexions WebSocket bidirectionnelles. Utilise Socket.IO ou ws pour la communication temps réel.

Analogie

Comme un talkie-walkie : la communication est instantanée dans les deux sens, sans besoin de 'rappeler'.

Exemple de code

@WebSocketGateway({ cors: true })
export class ChatGateway {
  @WebSocketServer() server: Server;

  @SubscribeMessage('message')
  handleMessage(@MessageBody() data: string) {
    this.server.emit('message', data);
  }
}

Cas d'usage

Implémenter un chat en temps réel, des notifications push ou un tableau de bord live.

Anti-pattern

Utiliser du polling HTTP pour des fonctionnalités temps réel au lieu de WebSocket.
#communication#interview

En entretien

  1. Explique-moi ce qu'est un WebSocket Gateway dans NestJS.

    C'est une classe décorée @WebSocketGateway qui gère des connexions bidirectionnelles en temps réel, en s'appuyant sur Socket.IO ou ws. La communication est instantanée dans les deux sens, comme un talkie-walkie.

  2. Dans quel cas tu choisirais un Gateway plutôt que du HTTP classique ?

    Pour du temps réel comme un chat, des notifications push ou un dashboard live, là où le client a besoin de recevoir des données sans les redemander sans arrêt.

  3. Quel est l'anti-pattern courant avec ce genre de besoin temps réel ?

    Faire du polling HTTP répété pour simuler du temps réel, alors qu'un WebSocket évite ces allers-retours inutiles et est nativement bidirectionnel.

Fiche mise à jour le 2026-09-27

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