TsgcWSPServer_WAMP › Events › OnFragmented
マルチフレーム WebSocket メッセージのペイロードが再組み立てされる前に、クライアントから受信した各フラグメントに対して発生します。
property OnFragmented: TsgcWSFragmentedEvent;
// TsgcWSFragmentedEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream; const OpCode: TOpCode; const Continuation: Boolean) of object
—
クライアントが複数の WebSocket フレームにまたがって大きなペイロードを送信する場合に使用される低レベルの診断フックです。Data は現在のフラグメントのバッファで、OpCode は最初のフラグメントから取得した元の種別(テキストまたはバイナリ)を保持し、Continuation は最初のフラグメント以降のすべてのフラグメントで True になります。通常の WAMP トラフィックは単一のフレームに収まるため、このイベントは通常発火しません。ストリーミングペイロードのネゴシエーションやプロトコルデバッグ時の帯域幅分析に役立ちます。
procedure TForm1.WAMPServerFragmented(Connection: TsgcWSConnection;
const Data: TMemoryStream; const OpCode: TOpCode;
const Continuation: Boolean);
begin
Memo1.Lines.Add(Format('[%s] fragment: %d bytes (continuation=%s)',
[Connection.Guid, Data.Size, BoolToStr(Continuation, True)]));
end;