On load, the browser opens a WebSocket to . caesium replies
with the handshake request headers it received (shown once below) so you can inspect exactly
what the proxy forwarded — the browser's JS has no other way to see WebSocket handshake headers. After
that, type any text and press Send; caesium echoes each frame back. The scheme follows the page
(ws:// on plaintext, wss:// on TLS). Over the h2 bind, modern browsers negotiate the
handshake via RFC 8441 Extended CONNECT; through tungsten the H1 Upgrade: websocket path is the
one that gets classified.
| Header | Value |
|---|---|
| waiting for connection… | |