Composant serveur HTTP/3 — sgcQUIC | eSeGeCe

Serveur HTTP/3

TsgcHTTP3Server — un serveur HTTP/3 (RFC 9114) qui sert les requêtes sur QUIC. Il descend de TsgcQUICServer, lie un port UDP, charge un certificat et une clé, et déclenche un événement pour chaque requête, avec server push, sessions WebTransport et datagrammes, en Delphi, C++ Builder et .NET.

TsgcHTTP3Server

Lie un port UDP, charge un certificat et une clé PEM, et réponds à chaque requête dans OnH3Request. QPACK, server push et WebTransport sont intégrés. Construit sur le moteur QUIC natif d'OpenSSL 3.5.

Classe du composant

TsgcHTTP3Server

Protocole

HTTP/3 (RFC 9114) sur QUIC

Famille

HTTP/3

Langages

Delphi, C++ Builder, .NET

Un serveur HTTP/3 en quelques lignes

Le serveur lie un port UDP, charge un certificat et une clé, et déclenche OnH3Request pour chaque requête. Les sessions WebTransport arrivent via 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;

Propriétés et méthodes clés

Les membres que tu utiliseras le plus souvent.

Listener

Port et Active lient et libèrent le listener UDP ; le serveur descend de TsgcQUICServer.

TLS

QUICOptions.SSLOptions.CertFile et KeyFile chargent le certificat PEM et la clé privée pour le handshake TLS 1.3.

Requêtes

OnH3Request se déclenche par requête avec la requête déjà analysée ; l'application remplit la réponse et peut pousser des réponses supplémentaires depuis l'intérieur du gestionnaire.

Tunnels et datagrammes

OnH3TunnelData et TunnelSend(aConnection, …) pilotent les tunnels Extended CONNECT ; SendDatagram envoie un datagramme non fiable.

WebTransport

OnWebTransportSession te remet une session WebTransport (RFC 9220) avec ses propres streams QUIC sur le moteur builtin.

Événements

OnH3Connect, OnH3Disconnect et OnH3Exception informent du cycle de vie de la connexion et des erreurs.

Continue d'explorer

Aide en ligneRéférence API complète et guide d'utilisation de sgcQUIC.
Tous les composants sgcQUICExplore la matrice complète des fonctionnalités des quatre composants.
Télécharger l'essai gratuitLance un serveur HTTP/3 et interroge-le avec n'importe quel client HTTP/3.
TarifsLicences Single, Team et Site avec code source complet.
Meilleur rapport qualité-prix : All-AccessTous les produits eSeGeCe, Support Premium inclus, à partir de €1,059/an.
Voir les tarifs All-Access

Prêt à te lancer ?

Télécharge l'essai gratuit et sers du HTTP/3 depuis Delphi, C++ Builder et .NET.