事件串流工作流程

閱讀 SSE 紀錄,不擅自補出缺少的事件

SSE 紀錄不是 NDJSON:一個事件可能跨越多行,區塊也可能只改變連線狀態而不派送事件。判斷缺少資料前,先檢查事件分隔。

內容更新: · 維護者:Hung Chi-Hsueh · 修正回報

擷取回應 body,而不是畫面截圖

SSE 使用 text/event-stream 與 UTF-8。請保留回應 body 的空白行,不要混入 HTTP 標頭、Markdown 圍欄或 console 前綴。支援 LF、CRLF 與單獨 CR,只移除一個開頭 BOM。本工具拒絕非法 UTF-8 檔案,不默默替換位元組。

檢視器只讀貼上的文字或本機檔案,不連線到端點。紀錄可能被截短或在日誌過程改變;工具無法還原缺少的位元組,也無法得知事件到達時間。

空白行才派送累積的 data

欄位名稱區分大小寫,每行只在第一個冒號切開,最多移除其後一個 ASCII 空格。多個 data 以 LF 接合;event 指定類型,預設為 message。空值 data 仍可形成空字串事件。註解與未知欄位不會變成 payload。

最後一個換行只代表該行結束,不是空白分隔行。EOF 尚未完成的 data 區塊不派送;報告標記待完成並解釋原因,不擅自補分隔線。[DONE] 是一般資料,不是通用 SSE 結束標記;JSON null 也可作為原始 payload。

區分欄位、緩衝值與已提交狀態

有效 id 先改變 ID 緩衝值,遇到完整空白行邊界才提交 Last-Event-ID,即使沒有 data 也會更新。空 id 清除、缺少 id 繼承、含 NUL 的 id 忽略。區塊追蹤分別顯示緩衝值與提交值,避免把未完成的 ID 欄位誤當成已派送事件。

只有 ASCII 數字的 retry 才更新要求的重連時間,以十進位字串保留超大整數。缺少 retry 顯示未指定,不猜測瀏覽器預設值。顯示狀態不代表已排定重試或證明實際重連。

保留原文,再明確匯出

JSON 檢視是選用的保守輔助:不支援的精度、重複鍵或檢視上限,不代表 SSE 事件無效。原始 data 為準,不從 JavaScript 值重建。JSON/NDJSON 匯出依來源順序保留全部已派送事件、有效 ID 與 retry 十進位字串,不受清單篩選影響。

輸入最多 1 MiB、50,000 個實體行、10,000 個事件,匯出最多 8 MiB。展開報告採 8 MiB 預算,計入重複的 UTF-8 狀態文字與每筆 128 位元組,不代表精確的瀏覽器記憶體用量。超限拒絕,不截斷。清單分頁、預覽有界,明確複製及下載保留完整內容。修改或取消會使舊輸出失效,Worker 處理五秒後中止。

本機解析不是自動遮罩或即時驗證

紀錄不上傳、不持久儲存、不放進網址或輸入分析;文字原樣顯示,不執行 HTML 或腳本。data 與事件 ID 仍可能揭露憑證或個資,複製、下載前請檢查。清除頁面不能刪除既有剪貼簿內容或檔案。

不測試 HTTP 狀態、MIME 類型、CORS、登入、快取、重連或服務健康,也不重組供應商專用回答。需要確認這些問題時,請保留原始來源並進行受控即時測試。來源快照日期:2026-10-11。

範例
id: 42
data: first
data: second

派送一個 message,data 為 first\nsecond,ID 為 42。
只有最後一個 LF 時,區塊仍待完成。

資料可信度

資料來源