TsgcWebSocketLoadBalancerServer › Gebeurtenissen › OnClientMessage
Wordt geactiveerd wanneer een tekstframe wordt ontvangen van een downstream-client vóórdat het naar de geselecteerde backendserver wordt doorgestuurd.
property OnClientMessage: TsgcWSLBServerMessageEvent;
// TsgcWSLBServerMessageEvent = procedure(Connection: TsgcWSConnection; Text: String; var Handled: Boolean) of object
—
OnClientMessage wordt geactiveerd voor elk tekst-WebSocket-frame dat wordt ontvangen van een gebalanceerde client op weg naar de backend-server. Connection identificeert de downstream-clientsessie en Text bevat de gedecodeerde UTF-8-payload. Stel Handled in op True om het bericht binnen de load balancer te verwerken (er vindt dan geen doorsturen naar de backend plaats), doorgaans wanneer de load balancer controlemeldingen namens de backend beantwoordt of ongeldige inhoud filtert. Laat Handled False (standaard) om de load balancer het bericht ongewijzigd te laten doorsturen.
procedure OnClientMessage(Connection: TsgcWSConnection; Text: String;
var Handled: Boolean);
begin
// answer ping messages directly from the load balancer
if SameText(Text, 'ping') then
begin
Connection.WriteData('pong');
Handled := True;
end;
end;