TsgcWebSocketHTTPServer › Eventos › OnUnknownProtocol
Disparado quando a primeira mensagem não corresponde a um protocolo conhecido, para que a conexão possa ser aceita ou rejeitada.
property OnUnknownProtocol: TsgcWSUnknownProtocolEvent;
// TsgcWSUnknownProtocolEvent = procedure(Connection: TsgcWSConnection; var Accept: Boolean) of object
—
OnUnknownProtocol é gerado quando o servidor recebe os primeiros bytes de um cliente que se conecta e não consegue reconhecer nenhum dos protocolos integrados (WebSocket, HTTP, SSE...). É normalmente utilizado para aceitar clientes TCP puros no mesmo listener que serve HTTP. Defina Accept como True para manter a sessão aberta (OnConnect será então disparado como uma conexão TCP pura) ou False para fechá-la. O parâmetro Connection identifica a sessão; inspecione TsgcWSConnection.Transport ou os bytes brutos já em buffer para decidir se deve permitir a conexão. Conexões não solicitadas podem ser rejeitadas aqui para reduzir o uso de CPU.
procedure OnUnknownProtocol(Connection: TsgcWSConnection; var Accept: Boolean);
begin
Accept := True;
end;