TsgcWebSocketLoadBalancerServer › Eventos › OnClientFragmented
Dispara quando um frame binário fragmentado é recebido de um cliente downstream antes de ser encaminhado ao servidor backend.
property OnClientFragmented: TsgcWSLBServerBinaryEvent;
// TsgcWSLBServerBinaryEvent = procedure(Connection: TsgcWSConnection; Data: TMemoryStream; var Handled: Boolean) of object
—
OnClientFragmented é gerado sempre que o balanceador de carga recebe uma mensagem WebSocket fragmentada de um cliente (habilitado via Options.FragmentedMessages no servidor subjacente). Connection é a sessão downstream e Data contém a carga útil do fragmento atual. Defina Handled como True para consumir o fragmento no balanceador de carga e impedir que ele seja encaminhado ao backend; deixe-o como False para que o balanceador de carga repasse o fragmento inalterado. O uso típico é para inspeção leve ou filtragem de uploads muito grandes sem remontar a mensagem inteira.
procedure OnClientFragmented(Connection: TsgcWSConnection; Data: TMemoryStream;
var Handled: Boolean);
begin
Log(Format('Fragment %d bytes from %s', [Data.Size, Connection.Guid]));
Handled := False;
end;