TsgcWebSocketLoadBalancerServerEvents › OnFragmented

OnFragmented イベント

ロードバランサーが自身のセッションの 1 つで断片化された WebSocket フレームを受信したときに発生します。

構文

property OnFragmented: TsgcWSFragmentedEvent;
// TsgcWSFragmentedEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream; const OpCode: TOpCode; const Continuation: Boolean) of object

デフォルト値

解説

OnFragmented は基盤となる HTTP/WebSocket サーバーから継承され、ロードバランサーによって直接終端された接続で受信したフラグメント化されたフレームごとに発生します。Data はフラグメントペイロード、OpCode は元のメッセージがテキストかバイナリかを識別し、Continuation は最初のフラグメント以降のすべてのフラグメントで True になります。Options.FragmentedMessages を通じてこのイベントを有効にしてください。バックエンドに転送されるセッションで受信したフラグメントには、フォワーダーが使用する Handled フラグも公開する OnClientFragmented を代わりに処理してください。

使用例


procedure OnFragmented(Connection: TsgcWSConnection; const Data: TMemoryStream;
  const OpCode: TOpCode; const Continuation: Boolean);
begin
  Log(Format('Fragment: op=%d cont=%s size=%d',
    [Ord(OpCode), BoolToStr(Continuation, True), Data.Size]));
end;

イベントに戻る