TsgcWebSocketLoadBalancerServer › Événements › OnClientMessage
Se déclenche lorsqu'une trame de texte est reçue d'un client en aval avant d'être transmise au serveur backend sélectionné.
property OnClientMessage: TsgcWSLBServerMessageEvent;
// TsgcWSLBServerMessageEvent = procedure(Connection: TsgcWSConnection; Text: String; var Handled: Boolean) of object
—
OnClientMessage est déclenché pour chaque trame WebSocket texte reçue d'un client équilibré à destination du serveur backend. Connection identifie la session client en aval et Text transporte la charge utile UTF-8 décodée. Définissez Handled à True pour consommer le message à l'intérieur de l'équilibreur de charge (aucun relais vers le backend dans ce cas), généralement lorsque l'équilibreur répond à des messages de contrôle au nom du backend ou filtre un contenu invalide. Laissez Handled à False (par défaut) pour que l'équilibreur de charge transmette le message sans modification.
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;