TsgcWebSocketProxyServer › Events › OnHandshake
Wywoływane po ocenie uzgadniania z klientem podrzędnym i przed wysłaniem odpowiedzi.
property OnHandshake: TsgcWSHandshakeEvent;
// TsgcWSHandshakeEvent = procedure(Connection: TsgcWSConnection; var Headers: TStringList) of object
—
Zdarzenie OnHandshake jest wywoływane bezpośrednio po przeanalizowaniu i zweryfikowaniu żądania aktualizacji HTTP klienta downstreamowego, a przed wysłaniem odpowiedzi handshake. Nagłówki przychodzące przesłane przez klienta są dostępne za pośrednictwem właściwości HeadersRequest połączenia (rzutowanie na TsgcWSConnectionServer). Parametr Headers to TStringList zawierający wiersze odpowiedzi, które zostaną zwrócone; należy dodać niestandardowe wiersze (np. nagłówek specyficzny dla dostawcy), aby uwzględnić je w odpowiedzi HTTP. Standardowe nagłówki WebSocket (Upgrade, Connection, Sec-WebSocket-Accept...) są już wypełnione i nie powinny być duplikowane. Zdarzenie to dotyczy wyłącznie downstreamowej gałęzi WebSocket; serwer proxy nie wykonuje uzgadniania WebSocket z upstreamowym serwerem TCP.
procedure OnServerHandshake(Connection: TsgcWSConnection; var Headers: TStringList);
begin
ShowMessage(TsgcWSConnectionServer(Connection).HeadersRequest.Text);
end;