QUIC 客户端
TsgcQUICClient — 一个原始 QUIC 传输客户端(RFC 9000):通过一次 TLS 1.3 握手打开连接,在一个或多个流上发送和接收字节,支持 0-RTT 恢复和连接迁移,适用于 Delphi、C++ Builder 和 .NET。
TsgcQUICClient — 一个原始 QUIC 传输客户端(RFC 9000):通过一次 TLS 1.3 握手打开连接,在一个或多个流上发送和接收字节,支持 0-RTT 恢复和连接迁移,适用于 Delphi、C++ Builder 和 .NET。
不含 HTTP 语义的纯 QUIC。设置 Host、Port 和事件处理器,激活组件,然后在流上写入字节。基于 OpenSSL 3.5 原生 QUIC 引擎构建。
赋值 Host 和 Port,挂接 QUIC 事件,设置 Active,然后用 WriteData 发送字节。调用 EnableMultiStream 和 OpenStream 可在一个连接上开出多个流。
uses
sgcQUIC_Client;
var
oClient: TsgcQUICClient;
begin
oClient := TsgcQUICClient.Create(nil);
oClient.Host := 'www.example.com';
oClient.Port := 443;
oClient.OnQUICConnect := OnQUICConnectHandler;
oClient.OnQUICStreamData := OnStreamDataHandler;
oClient.OnQUICDisconnect := OnQUICDisconnectHandler;
oClient.Active := True; // one-flight TLS 1.3 handshake
oClient.WriteData('ping'); // send bytes on a QUIC stream
end;
// Several independent streams on one connection (builtin engine):
oClient.EnableMultiStream;
oClient.OpenStream;
// includes: sgcQUIC_Client.hpp
TsgcQUICClient *oClient = new TsgcQUICClient(NULL);
oClient->Host = "www.example.com";
oClient->Port = 443;
oClient->OnQUICConnect = OnQUICConnectHandler;
oClient->OnQUICStreamData = OnStreamDataHandler;
oClient->OnQUICDisconnect = OnQUICDisconnectHandler;
oClient->Active = true; // one-flight TLS 1.3 handshake
oClient->WriteData("ping"); // send bytes on a QUIC stream
// Several independent streams on one connection (builtin engine):
oClient->EnableMultiStream();
oClient->OpenStream();
using esegece.sgcWebSockets;
var oClient = new TsgcQUICClient();
oClient.Host = "www.example.com";
oClient.Port = 443;
oClient.OnQUICConnect += OnQUICConnectHandler;
oClient.OnQUICStreamData += OnStreamDataHandler;
oClient.OnQUICDisconnect += OnQUICDisconnectHandler;
oClient.Active = true; // one-flight TLS 1.3 handshake
oClient.WriteData("ping"); // send bytes on a QUIC stream
// Several independent streams on one connection (builtin engine):
oClient.EnableMultiStream();
oClient.OpenStream();
您最常使用的成员。
Host、Port 和 Active 用于打开和关闭 QUIC 连接;Connect / Disconnect 以及 Start / Stop 可显式执行该操作。
QUICOptions 配置 ALPN、超时和 0-RTT;SSLQUICOptions 用于调整 TLS 1.3 层。
EnableMultiStream 加上 OpenStream(aUnidirectional) 可在一个连接上开出多个独立的 QUIC 流(内置引擎)。
WriteData 将 string 或 TBytes 负载写入某个流。
OnQUICConnect、OnQUICStreamData、OnQUICDisconnect 和 OnQUICException 驱动连接生命周期和入站数据处理。
0-RTT 恢复和连接迁移让会话在单次往返和网络变化中保持存活。