HTTP/3 服务器
TsgcHTTP3Server — 一个通过 QUIC 处理请求的 HTTP/3 服务器(RFC 9114)。它继承自 TsgcQUICServer,绑定一个 UDP 端口,加载证书和密钥,并为每个请求引发一个事件,支持服务器推送、WebTransport 会话和数据报,适用于 Delphi、C++ Builder 和 .NET。
TsgcHTTP3Server — 一个通过 QUIC 处理请求的 HTTP/3 服务器(RFC 9114)。它继承自 TsgcQUICServer,绑定一个 UDP 端口,加载证书和密钥,并为每个请求引发一个事件,支持服务器推送、WebTransport 会话和数据报,适用于 Delphi、C++ Builder 和 .NET。
绑定一个 UDP 端口,加载 PEM 证书和密钥,在 OnH3Request 中应答每个请求。QPACK、服务器推送和 WebTransport 均已内置。基于 OpenSSL 3.5 原生 QUIC 引擎构建。
服务器绑定一个 UDP 端口,加载证书和密钥,并为每个请求引发 OnH3Request。WebTransport 会话通过 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;
您最常使用的成员。
Port 和 Active 用于绑定和释放 UDP 监听器;服务器继承自 TsgcQUICServer。
QUICOptions.SSLOptions.CertFile 和 KeyFile 为 TLS 1.3 握手加载 PEM 证书和私钥。
OnH3Request 在每个请求到来时触发并携带已解析的请求;应用负责填充响应,也可以在处理器内部推送额外的响应。
OnH3TunnelData 和 TunnelSend(aConnection, …) 驱动 Extended CONNECT 隧道;SendDatagram 发送一个不可靠数据报。
OnWebTransportSession 为您提供一个 WebTransport 会话(RFC 9220),在内置引擎上拥有自己的 QUIC 流。
OnH3Connect、OnH3Disconnect 和 OnH3Exception 报告连接生命周期和错误。