# SSE Glossary

## Core Terms

**SSE (Server-Sent Events)**:
基于 HTTP 的服务器向客户端单向推送实时数据的协议。文本格式，浏览器原生支持自动重连。

**EventSource**:
浏览器原生 API，用于消费 SSE 流。只支持 GET，自动重连，不支持自定义请求头。

**text/event-stream**:
SSE 的 MIME 类型。服务器响应头必须设置此值，浏览器才知道按 SSE 协议解析。

**事件帧 (Event Frame)**:
SSE 数据流中的一个完整消息单元。以 `\n\n`（空行）分隔。

**心跳 (Heartbeat)**:
以 `:` 开头的注释行（如 `: hb`），客户端忽略，用于保持连接活跃防止代理断开。

**ReadableStream**:
Web Streams API，用于从网络响应中逐块读取数据。可替代 EventSource 手动解析 SSE。

## Protocol Fields

**data**:
事件的载荷内容。必填。可以有多行，每行都以 `data:` 开头。

**event**:
事件类型名。可选。省略时默认为 `message`，客户端用 `addEventListener` 按类型监听。

**id**:
事件唯一标识。可选。断线重连时浏览器通过 `Last-Event-ID` 请求头带回。

**retry**:
重连间隔（毫秒）。可选。覆盖浏览器默认的重连策略。
