TsgcWebSocketServer › イベント › OnTCPConnect
クライアントが TCP レベルで接続し WebSocket ハンドシェイクが行われる前に発生します。これにより接続を受け入れるか拒否するかを決定できます。
property OnTCPConnect: TsgcWSOnTCPConnect;
// TsgcWSOnTCPConnect = procedure(Connection: TsgcWSConnection; var Accept: Boolean) of object
—
OnTCPConnectは、TCP接続が受け付けられた後、WebSocketハンドシェイクの前に呼び出されます。これは、サーバーがプレーンなTCP接続を受け付ける場合に便利です。デフォルトでは、OnConnectはクライアントから最初のメッセージを受信した後にのみ発生するため、このイベントを処理してConnection.TransportをtrpTCPに設定すると、クライアントを最初から生のTCPピアとして扱えます。Acceptを Falseに設定すると、接続を即座に拒否します。Trueのまま(デフォルト)にすると、サーバーはプロトコル検出またはWebSocketハンドシェイクを続行します。
procedure OnTCPConnectEvent(aConnection: TsgcWSConnection; var Accept: Boolean);
begin
aConnection.Transport := trpTCP;
Accept := True;
end;