格 千格 KiloCell

SSE Online Test Client

Monitor Server-Sent Events streams in real time to support custom events and breakpoint debugging

Disconnected
SYSTEM Just now.
Waiting for the URL to enter and create connections...

What's SSE (Server-Sent Events)?

Server-Sent Events (SSE) is a server-end technology for transmitting real-time data to clients. Unlike WebSockets, SSE is one-way (server-to-client only), based on standard HTTP protocols, which are well suited to a real-time scenario that does not require two-way communication.

Specific issues addressed by this tool:

  • AI Fluid Response Debugging: View OpenAI or Claude styles in real time text/event-stream Response.
  • Long-link stability test: Watches the automatic reconnection mechanism (Reconnect) of the browser after the connection has been broken.
  • Event type authentication: Distinction message Events and Custom Naming Events.
  • Data resolution check: Automatically tries to format the JSON string that you push.

SSE vs WebSockets: Which one should we choose?

Feature SSE (Server-Sent Events) WebSockets
Communications orientation Unidirectional (Server →Clint) Double (Full Duplex)
Agreements Standard HTTP WS Protocol (upgraded from HTTP)
Reconnection mechanism Browser Native Support AutoReconnection Manually achieve reconnective logic
Firewall compatibility Very good. Special configuration may be required
Data Format Only text (usually JSON) is supported Support text and binary (Binary)

How can this test tool be used?

  1. Enter peer: Enter your SSE server address on the left (e. g. /api/v1/stream )。
  2. Configure Event: If your server sends a specific type of event (e.g. event: update ) , add a new item to the custom event.
  3. Monitor data: Click Building Connections, and the right log area will show the received data in real time.
  4. Analysis structure: Tools automatically recognize ID, Event and Data fields and display retry intervals for server settings (Retry).

Backend Deflection Reference (Node.js)


// Simple Node.js SSE Services端Achieved
res.writeHead(200, {
  'Content-Type': 'text/event-stream',
  'Cache-Control': 'no-cache',
  'Connection': 'keep-alive',
  'Access-Control-Allow-Origin': '*'
});

setInterval(() => {
  res.write(`id: ${Date.now()}\n`);
  res.write(`event: message\n`);
  res.write(`data: ${JSON.stringify({ time: new Date() })}\n\n`);
}, 1000);