WebBroker + WebSockets + HTTP/2

Host WebBroker / DataSnap multiplataforma que também aceita upgrades WebSocket nativos e streams HTTP/2 na mesma porta TLS.

TsgcWSHTTP2WebBrokerBridgeServer

Irmão multiplataforma do TsgcWSHTTPWebBrokerBridgeServer com framing HTTP/2 — a negociação ALPN h2 gerencia o caminho de upgrade, seus handlers WebBroker permanecem iguais.

Classe do componente

TsgcWSHTTP2WebBrokerBridgeServer

Protocolo

HTTP/2 (RFC 9113)

Plataformas

Windows, macOS, Linux, iOS, Android

Edição

Enterprise

Configure TLS, defina HTTP/2, escute

Monte seu TWebModule, configure SSLOptions e Specifications.HTTP2, depois Active := True — HTTP/1.1, HTTP/2 e WebSocket compartilham o mesmo endpoint TLS.

uses
  sgcWebSocket, sgcWebSocket_DataSnap, WebReq, WebModuleUnit1;

var
  Server: TsgcWSHTTP2WebBrokerBridgeServer;
begin
  if WebRequestHandler <> nil then
    WebRequestHandler.WebModuleClass := WebModuleClass;

  Server := TsgcWSHTTP2WebBrokerBridgeServer.Create(nil);
  Server.Port := 443;
  Server.SSL  := True;
  Server.SSLOptions.CertFile := 'cert.pem';
  Server.SSLOptions.KeyFile  := 'key.pem';
  Server.Specifications.HTTP   := True;
  Server.Specifications.HTTP2  := True;
  Server.Specifications.RFC6455 := True;

  Server.Active := True;
end;

O que tem por dentro

WebBroker / DataSnap sobre a pilha Indy com OpenSSL e framing HTTP/2 — um único endpoint TLS, três protocolos.

Despacho via ALPN

Durante o handshake TLS, o servidor anuncia http/1.1 e h2; o cliente escolhe um. Os upgrades WebSocket continuam fluindo pelo caminho HTTP/1.1.

Multiplexação HTTP/2

Múltiplos streams HTTP/2 compartilham uma única conexão TCP — uma aba do navegador pode emitir dezenas de chamadas REST em paralelo sem bloqueio HOL.

Handlers WebBroker inalterados

Cada requisição HTTP/2 é decodificada e repassada pelo pipeline WebBroker, portanto os handlers existentes de TWebModule, DataSnap REST e RAD Server funcionam sem alterações.

Coexistência com WebSocket

Defina Specifications.RFC6455 := True para manter os upgrades WebSocket na mesma porta. Vincule OnConnect / OnMessage para canais em tempo real.

TLS via OpenSSL

TLS multiplataforma com OpenSSL. Para implantações apenas Windows com TLS em modo kernel, use o componente irmão TsgcWSServer_HTTPAPI_WebBrokerBridge sobre HTTP.SYS.

Caminho para HTTP/3

Para HTTP/3 baseado em QUIC, use TsgcHTTP3Server diretamente — combine os dois quando quiser HTTP/2 sobre TCP para clientes legados e HTTP/3 sobre QUIC para clientes modernos.

Especificações & referências

Fontes autoritativas para os protocolos implementados por este componente.

Documentação & Demos

Acesse a referência do componente, pegue o projeto demo pronto para executar e baixe a versão de avaliação.

Ajuda online — TsgcWSHTTP2WebBrokerBridgeServer Referência completa de propriedades, métodos e eventos deste componente.
Projeto demo — Demos\40.DataSnap\Server_Indy_HTTP2 Exemplo pronto para executar. Acompanha o pacote sgcWebSockets — baixe a versão de avaliação abaixo.
Documento técnico (PDF) Recursos, início rápido, exemplos de código para Delphi & C++ Builder e referências de fontes primárias — somente deste componente.
Manual do usuário (PDF) Manual completo cobrindo todos os componentes da biblioteca.

Pronto para adicionar HTTP/2 ao seu servidor DataSnap?

Baixe a versão de avaliação gratuita e sirva HTTP/1.1, HTTP/2 e WebSocket a partir de um único host DataSnap Delphi.