TsgcWebSocketLoadBalancerServerEventos › OnClientMessage

OnClientMessage Evento

Se activa cuando se recibe un marco de texto de un cliente descendente antes de reenviarlo al servidor backend seleccionado.

Sintaxis

property OnClientMessage: TsgcWSLBServerMessageEvent;
// TsgcWSLBServerMessageEvent = procedure(Connection: TsgcWSConnection; Text: String; var Handled: Boolean) of object

Valor Predeterminado

Observaciones

OnClientMessage se activa para cada trama WebSocket de texto recibida de un cliente balanceado en su camino hacia el servidor backend. Connection identifica la sesión del cliente descendente y Text transporta la carga útil UTF-8 decodificada. Establezca Handled en True para consumir el mensaje dentro del balanceador de carga (en ese caso no se retransmite al backend), habitualmente cuando el balanceador responde a mensajes de control en nombre del backend o filtra contenido no válido. Deje Handled en False (por defecto) para que el balanceador reenvíe el mensaje sin cambios.

Ejemplo


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;

Volver a Eventos