Module 3 — Communication WebSockets et SSE
Maîtrisez les 5 mécanismes fondamentaux du web temps réel : comprenez le cycle HTTP/1.1 et HTTP/2, le chiffrement TLS et les limites du polling. Bâtissez des serveurs WebSockets bidirectionnels avec le package ws et diffusez les tokens génératifs de l'IA mot par mot grâce au streaming Server-Sent Events (SSE).
Fonctionnement du HTTP et cycle requête/réponse
Comprendre le protocole HTTP, les méthodes REST, les codes de statut, le chiffrement HTTPS/TLS et la communication React, Express et MySQL.
Le Polling — Interroger régulièrement un serveur
Techniques de Short Polling et Long Polling, statut 202 Accepted, orchestration asynchrone avec setTimeout récursif et limites de scalabilité.
WebSocket — Communication bidirectionnelle en temps réel
Architecture bidirectionnelle full-duplex, Handshake HTTP 101, protocole ws:// et wss://, diffusion Broadcast multi-clients et comparaison avec Socket.IO.
SSE (Server-Sent Events) — Communication en flux continu
Streaming unidirectionnel text/event-stream, res.write() vs res.end(), écoute avec EventSource et lecture progressive de flux HTTP avec fetch().
Streaming des réponses IA vers React avec Gemini
Connexion du SDK @google/genai en mode stream: true, boucle for await...of, retransmission SSE vers React, décodeur TextDecoder et annulation avec AbortController.
Sommaire du cours
Objectif de validation
À l'issue de ce module, vous serez capable d'orchestrer une communication client-serveur complète, d'écouter des streams de données de Gemini en continu et de construire une interface React capable d'afficher le texte généré au fil de l'eau avec interruption à la demande.