Tester / klient WebSocket

Pripojenie k ľubovoľnému koncovému bodu ws:// alebo wss://, voliteľné deklarovanie podprotokolov, odosielanie textových alebo JSON správ a sledovanie úplného záznamu životného cyklu: prechody stavu pripojenia, kódy a dôvody ukončenia a každá správa so smerom, časom a obsahom. Všetko beží lokálne v prehliadači pomocou natívneho API WebSocket — nič sa nesmeruje cez server. Pre obyčajné HTTP API slúži Klient / tester REST API; celá rodina nástrojov API sa nachádza v Nástrojoch API.
CLOSED Pri pripojení odoslať uvítací JSON
Záznam správ 0 udalostí
Zatiaľ nič. Na začatie je potrebné pripojenie k serveru.
Obmedzenia WebSocket v prehliadači, ktoré treba poznať: hlavičky požiadavky sa nedajú prispôsobiť (odosielajú sa iba cookies a podprotokol Sec-WebSocket-Protocol uvedený vyššie); handshake neriadi CORS, ale politika connect-src v Content-Security-Policy stránky ho môže zablokovať; zabezpečená (https) stránka môže otvoriť iba wss://; JavaScript nemôže posielať ping rámce na úrovni protokolu (prehliadač odpovedá na pingy servera automaticky — na simuláciu heartbeat sa používajú aplikačné správy ako {"type":"ping"}); samopodpísané certifikáty nie sú dôveryhodné. Na lokálne testovanie sa odporúča vlastný server alebo verejný echo ako wss://ws.postman-echo.com/raw alebo wss://echo.websocket.org.
Vysvetlenie WebSocket
WebSocket poskytuje obojsmerný, trvalý kanál správ medzi prehliadačom a serverom. Na rozdiel od HTTP sa správy môžu prenášať oboma smermi cez jedno spojenie.
ws:// verzus wss://—ws://je nešifrované (akohttp://); wss://je šifrované (akohttps://). Ak sa táto stránka obsluhuje cez HTTPS, prehliadač povolí ibawss://pripojenia. Z lokálneho súboru (file://) obe schémy sú povolené, ale mnohé verejné echo servery (vrátane echo.websocket.org) prijímajú ibawss://.
Podprotokoly — voliteľný zoznam oddelený čiarkami sa mapuje na hlavičku handshake Sec-WebSocket-Protocol. Server musí podporovať aspoň jeden z nich, inak prehliadač pripojenie odmietne.
Prečo pripojenie dobehne do konca, ale nezobrazí sa políčko „Odoslať správu“? Formulár na odosielanie sa zobrazí až vtedy, keď sa stav zmení na OPEN. Ak server handshake zruší, zobrazí sa udalosť chyby a potom CLOSED s kódom 1006 (neštandardné ukončenie — bez rámca zatvorenia). Typické príčiny: použitie ws:// na serveri, ktorý prijíma iba wss://, nesprávny hostiteľ alebo port, nezhoda podprotokolu alebo server je offline.
Kódy ukončenia, ktoré sa môžu objaviť — 1000 normálne; 1001 zatvára sa karta prehliadača; 1006 neštandardne / handshake zlyhal; 1009 správa je príliš veľká; 1011 chyba servera. Záznam zobrazí kód a krátky dôvod automaticky.
Riešenie zlyhaného pripojenia: najprv sa schéma prepne na wss://, overí sa, či je hostiteľ dostupný, zruší sa každý nepotrebný podprotokol a v konzole prehliadača sa skontrolujú chyby TLS alebo zmiešaného obsahu.