TsgcWebSocketServerイベント › OnHandshake

OnHandshake イベント

サーバー側でハンドシェイクが評価された後、レスポンスが送信される前に発生します。

構文

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

デフォルト値

解説

OnHandshake は、クライアントの HTTP アップグレードリクエストが解析・検証された直後、かつハンドシェイク応答が書き戻される前に、サーバー側で発生します。クライアントが送信した受信ヘッダーは、接続の HeadersRequest プロパティ(TsgcWSConnectionServer にキャスト)から取得できます。Headers パラメータは返される応答行を含む TStringList です。カスタム行(例:ベンダー固有のヘッダー)を追加すると HTTP 応答に含まれます。標準の WebSocket ヘッダー(Upgrade、Connection、Sec-WebSocket-Accept など)はすでに設定されているため、重複させないでください。

使用例


procedure OnServerHandshake(Connection: TsgcWSConnection; var Headers: TStringList);
begin
  ShowMessage(TsgcWSConnectionServer(Connection).HeadersRequest.Text);
end;

イベントに戻る