TsgcWebSocketClient이벤트 › OnFragmented

OnFragmented Event

Options.FragmentedMessages가 frgAll 또는 frgOnlyFragmented일 때 수신되는 모든 프래그먼트에 대해 발생합니다.

구문

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

기본값

설명

기본적으로(Options.FragmentedMessages = frgOnlyBuffer) 클라이언트는 메시지의 단편을 버퍼링하고 전체 페이로드가 수신되면 OnMessage 또는 OnBinary를 발생시킵니다. 단편당 OnFragmented만 수신하려면 속성을 frgOnlyFragmented로 설정하거나, 단편당 OnFragmented를 수신한 다음 메시지가 완료되면 OnMessage/OnBinary를 수신하려면 frgAll로 설정하십시오. Data 매개변수는 현재 단편의 바이트가 있는 TMemoryStream이고, OpCode는 원래 프레임 유형(text, binary, continuation...)을 나타내며, Continuation은 더 많은 단편이 예상되는 동안 True이고 마지막 단편에서 False입니다. 이 이벤트는 큰 스트림의 진행 상황을 보고하는 데 유용합니다.

예제


procedure OnFragmented(Connection: TsgcWSConnection; const Data: TMemoryStream;
  const OpCode: TOpCode; const Continuation: Boolean);
begin
  ShowProgress(Data.Size);
  if not Continuation then
    SaveStream(Data);
end;

이벤트로 돌아가기