TsgcWebSocketHTTPServer › Events › OnUnknownProtocol
最初のメッセージが既知のプロトコルと一致しない場合に発生し、接続を受け入れるか拒否するかを決定できます。
property OnUnknownProtocol: TsgcWSUnknownProtocolEvent;
// TsgcWSUnknownProtocolEvent = procedure(Connection: TsgcWSConnection; var Accept: Boolean) of object
—
OnUnknownProtocol は、サーバーが接続クライアントから最初のバイトを受信し、組み込みプロトコル(WebSocket、HTTP、SSE など)のいずれも認識できない場合に発生します。通常、HTTP を提供する同一のリスナーでプレーン TCP クライアントを受け入れるために使用されます。Accept を True に設定してセッションを開いたままにするか(その後、OnConnect がプレーン TCP 接続として発火します)、False に設定して閉じます。Connection パラメーターはセッションを識別します。接続を許可するかどうかを判断するには TsgcWSConnection.Transport またはすでにバッファリングされた生バイトを検査します。未要求の接続はここで拒否して CPU 使用量を削減できます。
procedure OnUnknownProtocol(Connection: TsgcWSConnection; var Accept: Boolean);
begin
Accept := True;
end;