TsgcWebSocketHTTPServer › Événements › OnHandshake
Se déclenche après que la handshake a été évaluée côté serveur et avant l'envoi de la réponse.
property OnHandshake: TsgcWSHandshakeEvent;
// TsgcWSHandshakeEvent = procedure(Connection: TsgcWSConnection; var Headers: TStringList) of object
—
OnHandshake est déclenché sur le serveur immédiatement après qu'une requête de mise à niveau HTTP d'un client ait été analysée et validée, et avant que la réponse de la poignée de main ne soit renvoyée. Les en-têtes entrants envoyés par le client sont disponibles via la propriété HeadersRequest de la connexion (cast en TsgcWSConnectionServer). Le paramètre Headers est une TStringList contenant les lignes de réponse qui seront retournées ; ajoutez des lignes personnalisées (par exemple un en-tête spécifique au fournisseur) pour les inclure dans la réponse HTTP. Les en-têtes WebSocket standard (Upgrade, Connection, Sec-WebSocket-Accept...) sont déjà remplis et ne doivent pas être dupliqués. Cet événement n'est pas déclenché pour les requêtes HTTP simples servies par OnCommandGet.
procedure OnServerHandshake(Connection: TsgcWSConnection; var Headers: TStringList);
begin
ShowMessage(TsgcWSConnectionServer(Connection).HeadersRequest.Text);
end;