TsgcWebSocketLoadBalancerServer › Olaylar › OnHandshake
Yük dengeleyici gelen bir WebSocket handshake'ini doğruladıktan sonra ve HTTP yanıtı döndürülmeden önce tetiklenir.
property OnHandshake: TsgcWSHandshakeEvent;
// TsgcWSHandshakeEvent = procedure(Connection: TsgcWSConnection; var Headers: TStringList) of object
—
OnHandshake, HTTP sunucusundan miras alınır ve gelen HTTP Upgrade isteği ayrıştırıldığında ve yanıtlanmak üzereyken tetiklenir. Gelen istek başlıkları, bağlantının HeadersRequest özelliği aracılığıyla kullanılabilir (TsgcWSConnectionServer'a cast edilir); aldığınız Headers listesi, peer'a gönderilecek yanıt satırlarını içerir ve özel başlıklarla genişletilebilir. Standart WebSocket başlıkları zaten mevcuttur ve çoğaltılmamalıdır. Olay hem aşağı akış (downstream) istemcileri hem de yük dengeleyici aracılığıyla kayıt yaptıran arka uç sunucuları için tetiklenir, bu yüzden ikisini ayırt etmeniz gerekiyorsa Connection.URL'yi kontrol edin.
procedure OnHandshake(Connection: TsgcWSConnection; var Headers: TStringList);
begin
Headers.Add('X-LoadBalancer: sgcWebSockets');
end;