Componente Servidor HTTP/3 — sgcQUIC | eSeGeCe

Servidor HTTP/3

TsgcHTTP3Server — um servidor HTTP/3 (RFC 9114) que atende requisições sobre QUIC. Ele descende de TsgcQUICServer, vincula uma porta UDP, carrega um certificado e uma chave, e dispara um evento para cada requisição, com server push, sessões WebTransport e datagramas, em Delphi, C++ Builder e .NET.

TsgcHTTP3Server

Vincule uma porta UDP, carregue um certificado e uma chave PEM, e responda a cada requisição em OnH3Request. QPACK, server push e WebTransport vêm integrados. Construído sobre o mecanismo QUIC nativo do OpenSSL 3.5.

Classe do componente

TsgcHTTP3Server

Protocolo

HTTP/3 (RFC 9114) sobre QUIC

Família

HTTP/3

Linguagens

Delphi, C++ Builder, .NET

Um servidor HTTP/3 em poucas linhas

O servidor vincula uma porta UDP, carrega um certificado e uma chave, e dispara OnH3Request para cada requisição. As sessões WebTransport chegam através de OnWebTransportSession.

uses
  sgcHTTP3_Server;

var
  oServer: TsgcHTTP3Server;
begin
  oServer := TsgcHTTP3Server.Create(nil);
  oServer.Port := 443;
  oServer.QUICOptions.SSLOptions.CertFile := 'cert.pem';
  oServer.QUICOptions.SSLOptions.KeyFile  := 'key.pem';

  oServer.OnH3Request := OnH3RequestHandler;   // fill the response here
  oServer.Active := True;
end;
// includes: sgcHTTP3_Server.hpp

TsgcHTTP3Server *oServer = new TsgcHTTP3Server(NULL);
oServer->Port = 443;
oServer->QUICOptions->SSLOptions->CertFile = "cert.pem";
oServer->QUICOptions->SSLOptions->KeyFile  = "key.pem";

oServer->OnH3Request = OnH3RequestHandler;   // fill the response here
oServer->Active = true;
using esegece.sgcWebSockets;

var oServer = new TsgcHTTP3Server();
oServer.Port = 443;
oServer.QUICOptions.SSLOptions.CertFile = "cert.pem";
oServer.QUICOptions.SSLOptions.KeyFile  = "key.pem";

oServer.OnH3Request += OnH3RequestHandler;   // fill the response here
oServer.Active = true;

Principais propriedades & métodos

Os membros que você usa com mais frequência.

Listener

Port e Active vinculam e liberam o listener UDP; o servidor descende de TsgcQUICServer.

TLS

QUICOptions.SSLOptions.CertFile e KeyFile carregam o certificado PEM e a chave privada para o handshake TLS 1.3.

Requisições

OnH3Request dispara por requisição já com a requisição analisada; a aplicação preenche a resposta e pode fazer push de respostas adicionais de dentro do handler.

Túneis e datagramas

OnH3TunnelData e TunnelSend(aConnection, …) governam os túneis Extended CONNECT; SendDatagram envia um datagrama não confiável.

WebTransport

OnWebTransportSession entrega uma sessão WebTransport (RFC 9220) com seus próprios streams QUIC no mecanismo builtin.

Eventos

OnH3Connect, OnH3Disconnect e OnH3Exception informam o ciclo de vida da conexão e os erros.

Continue explorando

Ajuda onlineReferência completa da API e guia de uso do sgcQUIC.
Todos os Componentes sgcQUICExplore a matriz de recursos completa dos quatro componentes.
Baixar Versão de Avaliação GratuitaSuba um servidor HTTP/3 e acesse-o com qualquer cliente HTTP/3.
PreçosLicenças Single, Team e Site com código-fonte completo.
Melhor custo-benefício: All-AccessTodos os produtos da eSeGeCe, com Suporte Premium incluído, a partir de €1,059/ano.
Ver preços do All-Access

Pronto para Começar?

Baixe a versão de avaliação gratuita e sirva HTTP/3 a partir de Delphi, C++ Builder e .NET.