TsgcWSPClient_WAMP › Zdarzenia › OnFragmented
Wywoływane dla każdego fragmentu wieloramkowej wiadomości WebSocket przed jej złożeniem.
property OnFragmented: TsgcWSFragmentedEvent;
// TsgcWSFragmentedEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream; const OpCode: TOpCode; const Continuation: Boolean) of object
—
Niskopoziomowy punkt zaczepienia przydatny, gdy serwer przesyła bardzo duże ładunki przez wiele ramek WebSocket. Data to częściowy bufor bieżącego fragmentu, OpCode zawiera oryginalny typ ramki (tekst lub dane binarne) pierwszego fragmentu, natomiast Continuation przyjmuje wartość True dla każdego fragmentu po pierwszym. Standardowy ruch WAMP jest niemal zawsze niezfragmentowany, dlatego zdarzenie to zazwyczaj pozostaje uśpione, chyba że aplikacja negocjuje strumieniowe ładunki z partnerem.
procedure TForm1.WAMPFragmented(Connection: TsgcWSConnection;
const Data: TMemoryStream; const OpCode: TOpCode;
const Continuation: Boolean);
begin
Memo1.Lines.Add(Format('fragment: %d bytes (continuation=%s)',
[Data.Size, BoolToStr(Continuation, True)]));
end;