クライアントの接続方法
ストリーミング API は HTTP/1.1 要求-応答モデルと Bayeux プロトコル (CometD 実装) を使用します。Bayeux クライアントは複数の段階でストリーミング API に接続します。
- ハンドシェイク要求を送信する。
- チャネルに登録要求を送信する。
- long polling を使用して接続する。
クライアントは、長命 (long-lived) 接続を維持しながら、サーバからイベントを受信します。
- クライアントがイベントを受信すると、次のイベントのセットを受信するためにすぐに再接続する必要があります。40 秒以内に再接続しないと、サーバが登録を期限切れにし、接続が終了します。クライアントは、ハンドシェイクと登録を最初からやり直す必要があります。
- イベントが生成されずにクライアントが待機しているときにサーバが接続を閉じた場合、2 分経過したらすぐにクライアントは再接続する必要があります。
長命 (long-lived) 接続が予期しないネットワークの中断により失われた場合、CometD は自動的に再接続を試みます。この再接続が成功した場合、この新しい接続では、再ハンドシェイクにより前の登録者が削除されているため、クライアントは再登録する必要があります。クライアントは、meta/handshake メタチャネルをリスンして、接続が失われて再確立されたときに通知を受信することができます。
これらの手順の詳細は、「Bayeux プロトコル、CometD、および long polling」を参照してください。