TsgcWSPClient_WAMP › Événements › OnFragmented
Se déclenche pour chaque fragment d'un message WebSocket multi-trames avant le réassemblage.
property OnFragmented: TsgcWSFragmentedEvent;
// TsgcWSFragmentedEvent = procedure(Connection: TsgcWSConnection; const Data: TMemoryStream; const OpCode: TOpCode; const Continuation: Boolean) of object
—
Crochet de bas niveau utile lorsque le serveur transmet des charges utiles très volumineuses sur plusieurs trames WebSocket. Data est le tampon partiel pour le fragment courant, OpCode contient le type de trame d'origine (texte ou binaire) du premier fragment, et Continuation est True pour chaque fragment après le premier. Le trafic WAMP standard est presque toujours non fragmenté, donc cet événement reste généralement inactif sauf si l'application négocie des charges utiles en streaming avec l'homologue.
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;