コンテンツにスキップ

SSE(Server-Sent Events)

Server-Sent Events は単方向の HTTP ストリームです。サーバーが送り出し、クライアントが受け取ります。 Restorm はこれを独立したリクエストの種類として扱います。

ツリー内で右クリック ▸ 追加 ▸ SSE リクエスト

接続済みの SSE タブ:右側に、受信した各イベントがタイムスタンプ、名前(「ping」)、ペイロード(シーケンス番号)とともに表示されています。

フィールド役割
URLストリームのエンドポイント
ヘッダー接続開始リクエストのヘッダー — 認証情報はここに入れます
最後のイベント識別子Last-Event-ID ヘッダーの初期値で、最初の接続時のみ送信されます

Restorm は EventSource の仕様に従います。event:data:id:retry: の各フィールドを解析し、 受信した各イベントをタイムスタンプ、名前、ペイロードとともに表示します。 イベントをクリックすると内容全体が展開されます。識別子は再接続のために保持されます。

接続が切れた場合、再接続時に最後に受信した識別子が Last-Event-ID で自動的に再送されます。 これによりサーバーは中断した位置から再開できます。

このストリームは受信専用です。接続が開いた後に送信するものはありません。

2 つのアクションがあります。SSE 接続(出力は connectedmessage。 受信したイベントごとに 1 回発行されます)と SSE 接続を閉じるです。 接続とストリーミングを参照してください。

よく使われるパターンは次のとおりです。まずストリームを開き、HTTP 呼び出しで業務処理を起動し、 続いて期待するイベントが message ポートに届くことをアサーションで確認します。

3 つのターゲットがあります。cURL、ブラウザーの EventSource、Python(ストリーミングモードの requests)。