Bead, en démo
Un client et un serveur, par WebSocket ou par HTTP, sur un seul port. Un client, et son serveur dans un Web Worker de la page : rien d’autre ne répond que les fichiers. Chaque bouton fait un appel ; les journaux montrent l’appel et ses enveloppes, vus du client : → part, ← arrive.
État
- Transport
-
WebSocket · HTTP ·
Web Worker, sans serveur
—
en HTTP, ce que le serveur envoie de lui-même revient par une écoute longue, un
GETqu’il tient jusqu’à 30 s et que la page relance dès qu’il rend ; en Web Worker, le serveur Bead et le fournisseur d’identité tournent dans la page même. - Connexion
- en cours…
- Identité
- aucune session
- Compteur
- —
- Rafale
- —
- Résultat
- —
Identité
Un faux fournisseur d’identité signe un JWT ; login le vérifie et range ses
droits dans la session. Lire demande une session, écrire la permission
write.
Appels
Bordure orange : une écriture, refusée sans la permission. Abonné, une rafale de cinq incréments arrive en deux notifications du compteur, cadencé par le protocole — la première, puis la dernière — et en cinq signaux que la page fusionne en deux lectures.
Appels, du plus récent
Dans la console aussi, sans recharger :
localStorage.setItem('bead:debug', '*'), ou un filtre comme
d(rx), t(n), -token ; removeItem l’arrête.