TsgcWebSocketLoadBalancerServerEventos › OnHandshake

OnHandshake Evento

Disparado após o load balancer validar um handshake WebSocket de entrada e antes de a resposta HTTP ser retornada.

Sintaxe

property OnHandshake: TsgcWSHandshakeEvent;
// TsgcWSHandshakeEvent = procedure(Connection: TsgcWSConnection; var Headers: TStringList) of object

Valor Padrão

Observações

OnHandshake é herdado do servidor HTTP e é gerado quando a requisição HTTP Upgrade recebida foi analisada e está prestes a ser respondida. Os cabeçalhos da requisição recebida estão disponíveis através da propriedade HeadersRequest da conexão (convertida para TsgcWSConnectionServer); a lista Headers que você recebe contém as linhas de resposta que serão enviadas ao peer e pode ser complementada com cabeçalhos personalizados. Os cabeçalhos WebSocket padrão já estão presentes e não devem ser duplicados. O evento dispara tanto para clientes downstream quanto para servidores backend que se registram através do load balancer, portanto verifique Connection.URL se você precisar distinguir os dois caminhos.

Exemplo


procedure OnHandshake(Connection: TsgcWSConnection; var Headers: TStringList);
begin
  Headers.Add('X-LoadBalancer: sgcWebSockets');
end;

Voltar para Eventos