TsgcWebSocketLoadBalancerServerEvents › OnHandshake

OnHandshake Zdarzenie

Wywoływane po weryfikacji przez load balancer przychodzącego uzgadniania WebSocket, a przed zwróceniem odpowiedzi HTTP.

Składnia

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

Wartość domyślna

Uwagi

Zdarzenie OnHandshake jest dziedziczone z serwera HTTP i wywoływane po sparsowaniu przychodzącego żądania HTTP Upgrade, tuż przed wysłaniem odpowiedzi. Nagłówki przychodzącego żądania są dostępne przez właściwość HeadersRequest połączenia (rzutowanego na TsgcWSConnectionServer); lista Headers, którą otrzymujesz, zawiera linie odpowiedzi wysyłane do peera i może być uzupełniana o niestandardowe nagłówki. Standardowe nagłówki WebSocket są już obecne i nie mogą być powielane. Zdarzenie jest wywoływane zarówno dla klientów podrzędnych, jak i dla serwerów backend rejestrujących się przez moduł równoważenia obciążenia, dlatego należy sprawdzić Connection.URL, aby rozróżnić oba przypadki.

Przykład


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

Powrót do Zdarzeń