Everything runs on your machine — your input is processed right here in your browser and never uploaded to any server.

Socket.IO Tester

not connected

How it works

1

Enter the server URL (https://your-server.com) — the client negotiates the wss:// WebSocket itself.

2

Adjust the path if your server mounts Socket.IO somewhere other than the default /socket.io/.

3

Click Connect: the status chip shows the session id (sid) once the handshake completes.

4

Emit any event — the payload is parsed as JSON when possible, sent as plain text otherwise.

5

Watch the feed: every event the server emits appears automatically, with no listener setup needed.

About this tool

Socket.IO backends are famously awkward to poke at: the protocol rides on top of WebSocket with its own handshake and heartbeats, so neither curl nor a raw WebSocket client speaks it. This page is a real socket.io-client in your browser — connect to your server, emit any event with a JSON payload, and see every event the server sends, no matter its name, timestamped in a live feed.

That last part matters: the tester listens with a wildcard, so you don’t have to know the event names in advance — whatever the server emits shows up. Typical uses: checking a deployment’s realtime layer is actually up, replaying the exact emit a frontend would send, or watching a room broadcast arrive.

100% private

The connection is a direct WebSocket between your browser and the Socket.IO server you name — no relay, no logging, nothing stored. Close the tab and no trace of the session remains.

Frequently asked questions

Why does my server connect everywhere else but not here?

This tester uses the WebSocket transport only — it skips Socket.IO’s default HTTP long-polling bootstrap. Virtually all modern servers accept direct websocket connections, but if yours explicitly restricts transports to polling, it will refuse; enable the websocket transport server-side.

Does the server’s CORS configuration matter?

For this tester, mostly no: direct WebSocket connections skip CORS preflights. Your server may still validate the Origin header itself — Socket.IO’s cors option does — so if the connection is rejected instantly, try allowing this origin or disabling origin checks while testing.

Can I join a namespace or send auth data?

Namespaces work — append them to the URL (https://server.com/admin). Handshake auth payloads (the auth option) are not yet exposed as a field; servers that require them will reject the connection with a message visible in the error line.

Related tools

Popular right now