TsgcWebSocketLoadBalancerServerZdarzenia › OnFragmented

OnFragmented Zdarzenie

Wywoływane, gdy moduł równoważenia obciążenia odbierze pofragmentowaną ramkę WebSocket w jednej ze swoich własnych sesji.

Składnia

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

Wartość domyślna

Uwagi

OnFragmented jest dziedziczone z bazowego serwera HTTP/WebSocket i jest wywoływane dla każdej pofragmentowanej ramki odebranej na połączeniu zakończonym bezpośrednio przez moduł równoważenia obciążenia. Data to ładunek fragmentu, OpCode identyfikuje, czy oryginalna wiadomość jest tekstowa czy binarna, a Continuation ma wartość True dla każdego fragmentu po pierwszym. Należy włączyć to zdarzenie przez Options.FragmentedMessages. Dla fragmentów odbieranych w sesjach przekazywanych do backendu należy zamiast tego obsługiwać OnClientFragmented, które udostępnia również flagę Handled używaną przez moduł przekazywania.

Przykład


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;

Powrót do Zdarzeń