TsgcWebSocketProxyServer › Ereignisse › OnHandshake
Wird ausgelöst, nachdem der Handshake mit einem Downstream-Client ausgewertet wurde und bevor die Antwort gesendet wird.
property OnHandshake: TsgcWSHandshakeEvent;
// TsgcWSHandshakeEvent = procedure(Connection: TsgcWSConnection; var Headers: TStringList) of object
—
OnHandshake wird unmittelbar ausgelöst, nachdem die HTTP-Upgrade-Anfrage eines Downstream-Clients geparst und validiert wurde, und bevor die Handshake-Antwort zurückgeschrieben wird. Die vom Client gesendeten eingehenden Header sind über die HeadersRequest-Eigenschaft der Verbindung verfügbar (umgewandelt in TsgcWSConnectionServer). Der Parameter Headers ist eine TStringList, die die Antwortzeilen enthält, die zurückgegeben werden; fügen Sie benutzerdefinierte Zeilen hinzu (zum Beispiel einen herstellerspezifischen Header), um sie in die HTTP-Antwort aufzunehmen. Standard-WebSocket-Header (Upgrade, Connection, Sec-WebSocket-Accept...) sind bereits ausgefüllt und sollten nicht dupliziert werden. Dieses Ereignis gilt nur für den Downstream-WebSocket-Zweig; der Proxy führt keinen WebSocket-Handshake gegenüber dem Upstream-TCP-Server durch.
procedure OnServerHandshake(Connection: TsgcWSConnection; var Headers: TStringList);
begin
ShowMessage(TsgcWSConnectionServer(Connection).HeadersRequest.Text);
end;