SSE 在线测试客户端

实时监控 Server-Sent Events 流,支持自定义事件和断点续传调试

已断开
SYSTEM 刚刚
等待输入 URL 并建立连接...

什么是 SSE (Server-Sent Events)?

Server-Sent Events (SSE) 是一种服务器端向客户端推送实时数据的技术。与 WebSockets 不同,SSE 是单向的(仅服务器到客户端),基于标准的 HTTP 协议,非常适合不需要双向通信的实时场景。

本工具解决的具体问题:

SSE vs WebSockets:该选哪一个?

特性 SSE (Server-Sent Events) WebSockets
通信方向 单向 (Server -> Client) 双向 (Full Duplex)
协议 标准 HTTP WS 协议 (由 HTTP 升级)
重连机制 浏览器原生支持自动重连 需手动实现重连逻辑
防火墙兼容性 非常好 (无特殊端口) 可能需要特殊配置
数据格式 仅支持文本 (通常为 JSON) 支持文本和二进制 (Binary)

如何使用此测试工具?

  1. 输入端点: 在左侧输入您的 SSE 服务器地址(例如 /api/v1/stream )。
  2. 配置事件: 如果您的服务器发送了特定类型的事件(如 event: update ),请在自定义事件中添加。
  3. 监控数据: 点击“建立连接”,右侧日志区将实时滚动显示接收到的数据。
  4. 分析结构: 工具会自动识别 ID、Event 和 Data 字段,并显示服务器设置的重试间隔(Retry)。

后端实现参考 (Node.js)


// 简单的 Node.js SSE 服务端实现
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);