eSeGeCe — Delphi ve .NET için Kurumsal İletişim Bileşenleri
ÖNE ÇIKAN · sgcQUIC

Gidiş-dönüşleri atlayın

TCP artı TLS, bir yanıtın ilk baytı gelmeden önce üç gidiş-dönüş gerektirir. QUIC, taşımayı ve şifreleme el sıkışmasını tek bir adımda birleştirir; devam ettirilen bir bağlantı ise verilerini daha ilk paketle gönderebilir. sgcQUIC, Delphi, C++ Builder ve .NET'e yerleşik bir QUIC taşıması ve bunun üzerine kurulu bir HTTP/3 istemcisi ve sunucusu sağlar, OpenSSL 3.5 QUIC motoru üzerinde.

  • RFC 9000, 9114, 9204
  • WebTransport (RFC 9220)
  • 0-RTT ve bağlantı geçişi
  • Delphi · C++ Builder · .NET

QUIC ve HTTP/3, RFC'lere Harfiyen Uyumlu

sgcQUIC kısmi bir uygulama değildir. Taşıma, çerçeveleme, başlık sıkıştırması ve WebTransport uzantısının tamamı, yerleşik OpenSSL 3.5 QUIC motoru üzerinde kapsanır.

4 Bileşenler TsgcQUICClient, TsgcQUICServer, TsgcHTTP3Client ve TsgcHTTP3Server, tek bir palet sayfasında.
9000 RFC 9000 QUIC taşıma protokolü: akışlar, datagramlar, akış kontrolü ve bağlantı geçişi.
9114 RFC 9114 HTTP/3, HTTP/2 ile aynı istek ve yanıt semantiği, QUIC akışları üzerinden taşınır.
9204 RFC 9204 QPACK başlık sıkıştırması, QUIC'in sırasız akış teslimatına göre tasarlanmıştır.
9220 RFC 9220 HTTP/3 üzerinden WebTransport, tek bir Extended CONNECT isteğinde çift yönlü akışlar ve datagramlar.
sgcQUIC

Delphi, C++ Builder ve .NET için ham bir QUIC taşıması ve bir HTTP/3 istemcisi ve sunucusu. Aynı yerleşik OpenSSL 3.5 QUIC motoru üzerinde, sgcWebSockets Enterprise'a bir eklenti. Tam kaynak, telifsiz dağıtım.

Ham QUIC, ya da Üzerine Kurulu HTTP/3

Kendi çerçevelemenizle çıplak bir taşıma için TsgcQUICClient ve TsgcQUICServer'ı kullanın, ya da tel formatı HTTP olduğunda doğrudan TsgcHTTP3Client ve TsgcHTTP3Server'a yönelin.

RFC 9000

QUIC İstemcisi ve Sunucusu

TsgcQUICClient ve TsgcQUICServer ham QUIC konuşur: tek bir şifreli bağlantı üzerinde birden çok bağımsız akış, güvenilmez datagramlar ve istemcinin IP adresi oturum ortasında değiştiğinde bağlantı geçişi.

QUIC bileşenlerini görüntüleyin →
RFC 9114

HTTP/3 İstemcisi ve Sunucusu

TsgcHTTP3Client ve TsgcHTTP3Server, HTTP semantiğini üzerine katmanlar: QPACK ile sıkıştırılmış istek ve yanıt başlıkları, Alt-Svc keşfi ve HTTP/2 kodunuzun zaten kullandığı aynı metotlar ve durum kodları.

HTTP/3 bileşenlerini görüntüleyin →
0-RTT

Oturum Devamı

Daha önce bağlanmış bir istemci, el sıkışma tamamlanmadan, ilk isteğini daha ilk pakette gönderebilir.

Migration

Bağlantı Geçişi

Bir Bağlantı Kimliği, IP adresi değil oturumu tanımlar; böylece Wi-Fi'den mobil veriye geçen bir telefon akışlarını açık tutar.

WebTransport

RFC 9220

WebTransport konuşan tarayıcı istemcileri için, tek bir Extended CONNECT isteği üzerinden çift yönlü akışlar ve güvenilmez datagramlar.

QUIC ve HTTP/3 bileşenleri için uygulamalı kılavuzlar:

HTTP/3 Üzerinden Tek Bir İstek

Diğer her sgcWebSockets HTTP istemcisiyle aynı şekil: özellikleri ayarlayın, bir olayı işleyin, bir metodu çağırın.

uses
  sgcHTTP3_Client;
var
  vClient: TsgcHTTP3Client;
begin
  vClient := TsgcHTTP3Client.Create(nil);
  vClient.Host := 'api.example.com';
  vClient.Port := 443;
  vClient.OnResponse :=
    procedure(Sender: TObject; const AStatus: Integer; const ABody: string)
    begin
      Memo1.Lines.Add(Format('%d: %s', [AStatus, ABody]));
    end;
  vClient.OnAltSvc :=
    procedure(Sender: TObject; const AAltSvc: string)
    begin
      Memo1.Lines.Add('Alt-Svc: ' + AAltSvc);  // h3 advertised over HTTP/2
    end;
  vClient.Connect;
  vClient.Get('/pets/42');
end;
uses
  sgcQUIC_Client;
var
  vQUIC: TsgcQUICClient;
begin
  vQUIC := TsgcQUICClient.Create(nil);
  vQUIC.Host := 'quic.example.com';
  vQUIC.Port := 4433;
  vQUIC.EnableMultiStream := True;
  vQUIC.OnQUICConnect :=
    procedure(Sender: TObject)
    var
      vStreamId: Int64;
    begin
      vStreamId := vQUIC.OpenStream;
      vQUIC.WriteData(vStreamId, 'ping');
    end;
  vQUIC.OnQUICStreamData :=
    procedure(Sender: TObject; const AStreamId: Int64; const AData: string)
    begin
      Memo1.Lines.Add(Format('stream %d: %s', [AStreamId, AData]));
    end;
  vQUIC.Active := True;
end;

İstemci ve sunucu, her iki tarafta da aynı bağlantı, akış ve datagram modelini paylaşır. Tam özellik matrisi →

Tek Bağlantı Noktası, Tek Sertifika, İki Protokol

TsgcHTTP3Server, bir UDP bağlantı noktasında QUIC üzerinden HTTP/3 konuşur; mevcut bir HTTP/2 sunucusuyla TsgcHTTP3ServerBridge tarzı eşleştirme ise eski istemcilerin TCP üzerinden çalışmaya devam etmesini sağlar. Alt-Svc'yi duyurun, modern istemciler kendilerini yükseltsin.

HTTP3Server.pas
uses
  sgcHTTP3_Server;

procedure TForm1.FormCreate(Sender: TObject);
begin
  FServer := TsgcHTTP3Server.Create(nil);
  FServer.Port := 443;
  FServer.QUICOptions.SSLOptions.CertFile := 'server.crt';
  FServer.QUICOptions.SSLOptions.KeyFile  := 'server.key';

  // One handler for every incoming HTTP/3 request
  FServer.OnH3Request :=
    procedure(const Ctx: TsgcHTTP3Context)
    begin
      if Ctx.Path = '/pets/42' then
        Ctx.RespondJSON(200, '{"name":"Rex"}')
      else
        Ctx.Respond(404, 'Not found');
    end;

  FServer.Active := True;
end;

Bu size ne kazandırır

QUIC'i sonlandıran, h3'ü müzakere eden ve her isteği tek bir işleyiciye yönlendiren, HTTP/2 sunucunuzun zaten yüklediği aynı sertifikayı kullanan tek bir Delphi bileşeni.

Alt-Svc, böylece yükseltmeler otomatiktir

Sıradan bir HTTP/2 yanıtı, bir Alt-Svc: h3=":443" başlığı taşır. Bunu anlayan istemciler, bir yönlendirme veya ikinci bir alan adı olmadan, bir sonraki istekte QUIC'i açar.

WebTransport, aynı bağlantı noktasında

Bir Extended CONNECT isteği, bir akışı WebTransport'a yükseltir ve bir tarayıcı istemcisine, sıradan HTTP/3 isteklerinin yanında çift yönlü akışlar ve datagramlar sağlar.

Yerleşik QUIC, harici bağımlılık yok

QUIC ve TLS 1.3 el sıkışması, OpenSSL 3.5'in kendi QUIC motoru üzerinde çalışır. Derlenecek veya paketlenecek ayrı bir QUIC kütüphanesi yoktur.

OpenSSL 3.5 TLS 1.3 Alt-Svc QPACK WebTransport

HTTP/3 sunucu bileşeni →

sgcQUIC, sgcWebSockets Enterprise'a bir eklentidir; bu yüzden lisans, destek kanalı ve güncelleme sıklığı zaten sahip olduklarınızla aynıdır.

Dokuz Kütüphane, Tek Araç Kutusu

sgcQUIC, Delphi, C++ Builder ve .NET için dokuz eSeGeCe bileşen kütüphanesinden biridir. Aynı kuralları paylaşırlar, tam kaynak koduyla gelirler ve telifsiz dağıtılırlar.

sgcQUIC

Ham QUIC taşıması ve WebTransport dahil bir HTTP/3 istemcisi ve sunucusu. sgcWebSockets Enterprise'a bir eklenti.

Daha fazla bilgi →

sgcWebSockets

WebSocket, HTTP/2, MQTT, AMQP, WebRTC, yapay zeka ve 30+ API entegrasyonu. sgcQUIC'in üzerine kurulduğu Enterprise lisansı.

Daha fazla bilgi →

sgcHTML

Bootstrap 5 ve htmx üzerinde sunucu taraflı HTML ve arayüz bileşenleri. Oluşturulan arayüzü aynı HTTP/3 taşıması üzerinden sunun.

Daha fazla bilgi →

sgcAI

Delphi ve C++ Builder için yapay zeka, LLM ve MCP bileşenleri. Tek bir bileşenin arkasında yedi LLM sağlayıcısı, ayrıca MCP, embeddings ve konuşma. Bağımsız ürün, sgcWebSockets Core çalışma zamanı pakete dahildir.

Daha fazla bilgi →

sgcMQ

Delphi ve C++ Builder için MQTT, AMQP 0.9.1 ve 1.0, Apache Kafka ve STOMP istemci bileşenleri. Bağımsız ürün, sgcWebSockets Core çalışma zamanı pakete dahildir.

Daha fazla bilgi →

sgcAuth

Delphi ve C++ Builder için OAuth2 istemcisi, JWT istemcisi ve WebAuthn desteği. Herhangi bir OAuth2/OIDC sağlayıcısıyla oturum açın, JWT'ler üretin ve doğrulayın, yerel uygulamalara passkey kimlik doğrulaması ekleyin. Bağımsız ürün, sgcWebSockets Core çalışma zamanı pakete dahildir.

Daha fazla bilgi →

sgcHTTP

Delphi ve C++ Builder için HTTP/2 istemcisi, gRPC istemcisi ve Google Cloud Pub/Sub, Calendar ve FCM istemcileri. Bağımsız ürün, sgcWebSockets Core çalışma zamanı pakete dahildir.

Daha fazla bilgi →

sgcREST

Delphi ve C++ Builder için REST sunucusu, OpenAPI sunucusu ve OpenAPI istemci bileşenleri. Bir OpenAPI 3.x sözleşmesinden REST API'ler yayımlayın veya OpenAPI ile tanımlanmış herhangi bir API'yi kullanın. Bağımsız ürün, sgcWebSockets Core çalışma zamanı pakete dahildir.

Daha fazla bilgi →

sgcOpenAPI

OpenAPI 3.x ayrıştırıcısı, yerel Pascal SDK üreticisi, OpenAPI sunucu bileşeni ve 1.195+ önceden oluşturulmuş bulut SDK'si.

Daha fazla bilgi →

sgcSign

Belgeler için XAdES, PAdES, CAdES ve ASiC, kod için Authenticode, ClickOnce, NuGet ve VSIX.

Daha fazla bilgi →

sgcBiometrics

Delphi ve C++ Builder için Windows Hello, parmak izi sensörleri ve Windows Biometric Framework.

Daha fazla bilgi →

sgcIndy

Delphi 7'den 13'e modern TLS, IPv6 ve HTTP/2 ile güncellenmiş Indy TCP/IP bileşenleri.

Daha fazla bilgi →

Fiyatlandırmayı ve sürümleri görüntüleyin Ücretsiz denemeyi indirin

Geliştiriciler Ne Diyor

Dünya çapında Delphi, C++ Builder, Lazarus ve .NET geliştiricilerinin güvendiği.

sgcWebSockets kütüphaneniz çok kullanışlı ve kurulumu kolay. İyi çalışmalarınızı sürdürün!

Simone Moretti Delphi Geliştiricisi

sgcWebSockets harika ve desteğiniz en iyisi!

Christian Meyer Kurucu ve CTO

Yardımınız ve desteğiniz için çok teşekkürler, bileşenlerinize bayılıyorum.

Mark Steinfeld CTO

Blogdan Son Yazılar

Tüm yazıları görüntüleyin →

eSeGeCe'nin QUIC görünümünü görüyorsunuz.

Bana başka bir açı gösterin →
30 Günlük Para İade GarantisiMemnun kalmadınız mı? Satın alımdan sonraki 30 gün içinde tam para iadesi talep edin. İade politikasına bakın

IDE'nizden Ayrılmadan QUIC ve HTTP/3'ü Yayına Alın

Ham QUIC taşıması, HTTP/3 istemcisi ve sunucusu ve WebTransport, OpenSSL 3.5 QUIC motoru üzerinde. Tam kaynak, telifsiz dağıtım, sgcWebSockets Enterprise'a bir eklenti olarak.