TsgcWebSocketProxyServer › Eventos › OnHandshake
Se activa después de que se evalúa el protocolo de enlace con un cliente descendente y antes de que se envíe la respuesta.
property OnHandshake: TsgcWSHandshakeEvent;
// TsgcWSHandshakeEvent = procedure(Connection: TsgcWSConnection; var Headers: TStringList) of object
—
OnHandshake se genera inmediatamente después de que se haya analizado y validado la solicitud de actualización HTTP de un cliente descendente, y antes de que se escriba la respuesta del handshake. Las cabeceras entrantes enviadas por el cliente están disponibles a través de la propiedad HeadersRequest de la conexión (convertida a TsgcWSConnectionServer). El parámetro Headers es un TStringList que contiene las líneas de respuesta que se devolverán; añada líneas personalizadas (por ejemplo, una cabecera de proveedor específico) para incluirlas en la respuesta HTTP. Las cabeceras WebSocket estándar (Upgrade, Connection, Sec-WebSocket-Accept...) ya están rellenas y no deben duplicarse. Este evento se aplica únicamente al tramo WebSocket descendente; el proxy no realiza un handshake WebSocket contra el servidor TCP ascendente.
procedure OnServerHandshake(Connection: TsgcWSConnection; var Headers: TStringList);
begin
ShowMessage(TsgcWSConnectionServer(Connection).HeadersRequest.Text);
end;