Connect to any WebSocket or Server-Sent Events endpoint from your browser, see frames stream live, measure latency, send messages, validate JSON inline.
Endpoint
Browsers cannot set Authorization headers on WebSocket / SSE handshakes. URL params, cookies (same-origin), and Sec-WebSocket-Protocol are the available options.
Frame log 0
No frames yet. Connect to an endpoint above.
Connection stats
As-is, no warranty. These apps are free under their listed license and run entirely in your browser. Use at your own risk — don't blame me if your PC catches fire, your dog runs away, or the math turns out wrong. Verify anything that actually matters. None of this is professional financial, medical, legal, or engineering advice.
Paste a ws://, wss://, http://, or https:// URL. Hit Connect. Watch frames stream live in the log on the left, with stats on the right.
ws:// or wss://) - bidirectional. Send text, JSON, or binary; receive in real timehttp:// or https://) - one-way stream from server to browser. Receive onlyDE AD BE EF)graphql-transport-ws, mqtt, ocpp1.6graphql-transport-ws)WebSocket and EventSource in browsers are deliberately less flexible than curl or a Node client:
You cannot set Authorization headers on the handshake. new WebSocket(url, protocols) and new EventSource(url, { withCredentials }) don’t accept a headers option. The browser controls the handshake. Workarounds: pass auth as a URL query param, send a cookie (same-origin only), or use the Sec-WebSocket-Protocol subprotocol for tokens. The Advanced panel surfaces the URL-param helper.
CORS is the server’s call. If the target server doesn’t accept connections from gekro.com, that’s correct security on the server’s part. The error appears in the log with context. To test those endpoints you need a tool that bypasses browser CORS (Node, curl, a desktop client).
WebSocket errors are intentionally vague. When ws.onerror fires the browser deliberately tells you nothing beyond “error” to prevent cross-origin information leaks. Check DevTools Network tab for the actual HTTP-level handshake response.
WebSocket ping/pong frames are not exposed to JS. The browser handles them internally to keep the connection alive. We measure latency as connect-to-open and frame-to-frame gaps instead.
Mixed-content blocks. A page served over https:// cannot open a ws:// connection. Use wss://.
For informational purposes only. Not financial, medical, or legal advice. You are solely responsible for how you use these tools.