TsgcWebSocketLoadBalancerServerEvents › OnBinary

OnBinary イベント

ロードバランサー自身がダウンストリームセッションの 1 つでバイナリ WebSocket フレームを受信したときに発火します。

構文

property OnBinary: TsgcWSBinaryEvent;
// TsgcWSBinaryEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream) of object

デフォルト値

解説

OnBinaryは、基盤となるHTTP/WebSocketサーバーから継承され、ロードバランサーで終端された接続(例えば、利用可能なバックエンドがなかったため転送されなかった接続や、LoadBalancerが直接処理するプロトコルにアタッチされた接続)で完全なバイナリフレームが受信されたときに発生します。Dataストリームにはペイロードが含まれ、その位置は0です。一度だけ読み取り、解放しないでください。バッファはサーバーが所有しています。バックエンドサーバーにプロキシされている接続で到着するデータについては、代わりにOnClientBinaryを使用してください。これは、転送される前のクライアントごとのフレームを公開します。

使用例


procedure OnBinary(Connection: TsgcWSConnection; const Data: TMemoryStream);
begin
  Log(Format('Received %d bytes from %s', [Data.Size, Connection.Guid]));
end;

イベントに戻る