TsgcWebSocketLoadBalancerServer › Eventi › OnClientBinary
Generato quando viene ricevuto un frame binario da un client downstream prima che venga inoltrato al server backend selezionato.
property OnClientBinary: TsgcWSLBServerBinaryEvent;
// TsgcWSLBServerBinaryEvent = procedure(Connection: TsgcWSConnection; Data: TMemoryStream; var Handled: Boolean) of object
—
OnClientBinary viene generato per ogni frame WebSocket binario ricevuto da un client bilanciato sulla via verso il server backend. Il parametro Connection è la sessione client downstream e Data è il payload binario (posizione 0, non liberare). Impostare Handled su True per consumare il frame nel load balancer e impedirne l'inoltro al backend; lasciarlo False (predefinito) per consentire al load balancer di inoltrare il frame invariato. È il posto giusto per ispezionare, verificare o riscrivere il traffico binario, intercettare messaggi di tipo health-check o eliminare payload che non dovrebbero mai raggiungere i server backend.
procedure OnClientBinary(Connection: TsgcWSConnection; Data: TMemoryStream;
var Handled: Boolean);
begin
// drop empty frames instead of forwarding them
Handled := Data.Size = 0;
end;