eSeGeCe — Componentes de comunicação de nível empresarial para Delphi e .NET
DESTAQUE · sgcHTTP

HTTP/2 e gRPC, nativos no Delphi

Cinco componentes cliente cobrem três funções. O TsgcHTTP2Client fala HTTP/2 com streams multiplexados sobre uma única conexão TLS e compressão de cabeçalhos HPACK. O TsgcGRPCClient é um cliente gRPC construído sobre ele, para chamadas unárias e em streaming de Protocol Buffers. Mais três classes alcançam o Google Cloud sobre HTTPS puro: Pub/Sub, Calendar e Firebase Cloud Messaging. Autônomo, o runtime sgcWebSockets Core está incluído.

  • 5 classes cliente
  • HTTP/2 · gRPC · Google Cloud
  • Streams multiplexados, HPACK, ALPN
  • Delphi 7 ao 13 · C++ Builder

Dois Componentes de Paleta, Três Clientes Google Cloud

O sgcHTTP é um pacote autônomo. Ele inclui o runtime sgcWebSockets Core sobre o qual é construído, e toda licença vem com código-fonte completo, então as implementações no nível de protocolo são depuradas passo a passo no seu próprio debugger.

2 Componentes de paleta TsgcHTTP2Client e TsgcGRPCClient, em uma única página de paleta.
5 Classes cliente no total HTTP/2, gRPC e três clientes Google Cloud.
3 Serviços Google Cloud Pub/Sub, Calendar e Firebase Cloud Messaging, HTTPS puro.
1 Instalador autônomo O runtime sgcWebSockets Core e a camada HTTP/TLS vêm juntos dentro do pacote.
100% Código-fonte incluído Toda licença carrega o código-fonte completo dos cinco clientes e do runtime embutido.
sgcHTTP

Componentes cliente de HTTP/2, gRPC e Google Cloud para Delphi e C++ Builder. Um pacote autônomo com o runtime sgcWebSockets Core incluído, código-fonte completo e implantação sem royalties.

Duas Dependências, Não Cinco

As cinco classes se dividem de forma clara pelo que precisam por baixo. HTTP/2 e gRPC precisam de ALPN, o que significa sgcCustomIndy. O Google Cloud não precisa de nada além de HTTPS e uma conta de serviço, o que o runtime Core embutido já fornece.

HTTP/2

Streams Multiplexados sobre Uma Única Conexão TLS

O TsgcHTTP2Client fala HTTP/2 (RFC 9113): múltiplas requisições compartilham uma única conexão TCP como streams independentes, então uma resposta lenta não bloqueia as outras atrás dela. Os cabeçalhos são comprimidos com HPACK, e o protocolo h2 é negociado durante o handshake TLS via ALPN, a razão pela qual o componente é construído sobre o sgcCustomIndy em vez da biblioteca Indy padrão. Todo verbo é coberto, Connect, Get, Post, Put, Patch, Delete e Options, cada um com uma chamada síncrona e uma gêmea Async.

Ver o cliente HTTP/2 →
gRPC

RPC Unário e em Streaming, sobre o HTTP/2

O TsgcGRPCClient é construído sobre o cliente HTTP/2, então herda a conexão multiplexada e adiciona o formato de wire do gRPC por cima: mensagens Protocol Buffers com prefixo de tamanho sobre streams HTTP/2. Call e CallAsync cobrem RPCs unários, ServerStreamingCall lida com um stream de respostas para uma requisição, e OpenClientStream/OpenBidiStream cobrem RPCs de client-streaming e bidirectional-streaming. RetryPolicy, Interceptors e ServiceConfig adicionam comportamento de retry e lógica transversal sem tocar nos pontos de chamada.

Ver o cliente gRPC →
Google Cloud

Pub/Sub, Calendar e Push, HTTPS Puro

Mais três classes alcançam o Google Cloud sobre HTTPS puro, autenticadas com uma conta de serviço Google, e nenhuma delas precisa do sgcCustomIndy: TsgcHTTPGoogleCloud_PubSub_Client, TsgcHTTPGoogleCloud_Calendar_Client e TsgcHTTPGoogleCloud_FCM_Client.

Veja o que ele faz →
Válvula de escape

Server Push e Corpos em Chunks

Eventos expõem o ciclo de vida da conexão: OnHTTP2Connect, OnHTTP2Response, OnHTTP2ResponseFragment para corpos em chunks, OnHTTP2PushPromise para server push, OnHTTP2GoAway e OnHTTP2Disconnect. Nada no ciclo de vida do stream fica escondido de você.

A superfície do HTTP/2 →
Multiplataforma

Uma Dependência para Dois Clientes, Nenhuma para Três

O cliente HTTP/2 e o cliente gRPC são construídos sobre o sgcCustomIndy, que cobre a mesma faixa de plataformas do próprio sgcWebSockets. Os clientes Google Cloud são HTTPS puro, então rodam onde quer que o runtime Core rode. Do Delphi 7 ao RAD Studio 13 e no C++ Builder.

A matriz de recursos →

Páginas de referência de cada componente:

HTTP/2 e gRPC, Lado a Lado

Os dois componentes são declarados na unit sgcHTTP, e o TsgcGRPCClient carrega a sua própria conexão HTTP/2 através da propriedade Client. O mesmo código compila do Delphi 7 ao 13 e no C++ Builder.

uses
  sgcHTTP;
var
  HTTP2: TsgcHTTP2Client;
begin
  HTTP2 := TsgcHTTP2Client.Create(nil);
  HTTP2.Host := 'https://api.example.com';
  HTTP2.OnHTTP2Response := HTTP2Response;
  HTTP2.Active := True;

  HTTP2.GetAsync('/v1/status');
end;

procedure TForm1.HTTP2Response(Sender: TObject;
  const Connection: TsgcHTTP2ConnectionClient;
  const Request: TsgcHTTP2RequestProperty;
  const Response: TsgcHTTP2ResponseProperty);
begin
  Memo1.Lines.Add(Response.DataString);
end;
uses
  sgcHTTP;
var
  GRPC: TsgcGRPCClient;
begin
  GRPC := TsgcGRPCClient.Create(nil);
  GRPC.Client.Host := 'https://grpc.example.com';
  GRPC.OnGRPCResponse := GRPCResponse;

  GRPC.CallAsync('example.OrderService', 'GetOrder', RequestBytes);
end;

procedure TForm1.GRPCResponse(Sender: TObject;
  const aResponse: TsgcGRPCResponse);
begin
  Memo1.Lines.Add(aResponse.DataString);
end;

A mesma forma em Object Pascal e em C++ Builder. A matriz completa de recursos →

Duas Coisas Que Vale Saber Antes

O que o sgcHTTP precisa de você, e o que não precisa. As duas respostas são curtas, e as duas estão nesta página, não nas letras miúdas.

Dependências por cliente
cliente                             precisa do sgcCustomIndy
TsgcHTTP2Client                     sim, para o ALPN
TsgcGRPCClient                      sim, roda sobre o TsgcHTTP2Client
TsgcHTTPGoogleCloud_PubSub_Client   não, HTTPS puro
TsgcHTTPGoogleCloud_Calendar_Client não, HTTPS puro
TsgcHTTPGoogleCloud_FCM_Client      não, HTTPS puro

O HTTP/2 negocia h2 com ALPN durante o handshake TLS.
  A biblioteca Indy padrão que acompanha o RAD Studio
  não tem suporte a ALPN, então tanto o HTTP/2 quanto o
  gRPC são construídos sobre o sgcCustomIndy em vez disso.

O sgcHTTP é autônomo

Autônomo, o runtime sgcWebSockets Core está incluído: a pilha de cliente HTTP/TLS pela qual todo componente envia as suas requisições, e a camada JSON que decodifica as respostas do Google Cloud, tudo em um único instalador, com código-fonte completo na caixa.

HTTP/2 e gRPC precisam do sgcCustomIndy

A negociação ALPN do HTTP/2 não é suportada pela biblioteca Indy padrão, então o TsgcHTTP2Client e, por extensão, o TsgcGRPCClient são construídos sobre o sgcCustomIndy em vez disso. Ele é adicionado ao seu carrinho automaticamente quando você pede o sgcHTTP; já possui uma licença? Remova-o no checkout.

O Google Cloud precisa apenas de HTTPS

Os três clientes Google Cloud se autenticam com o id de projeto, o e-mail de cliente e a chave privada de uma conta de serviço Google, e chamam as APIs REST sobre a pilha HTTPS pura do runtime Core. Nenhuma biblioteca nativa, nenhum sgcCustomIndy.

Delphi e C++ Builder

O sgcHTTP tem como alvo o Delphi 7 até o RAD Studio 13 e o C++ Builder. Os mesmos componentes também vivem dentro do sgcWebSockets Enterprise, então uma licença Enterprise/All-Access já existente pode já cobrir você. O instalador de avaliação gratuita é o trial All-Access do sgcWebSockets, então as cinco classes podem ser avaliadas hoje mesmo.

ALPN HPACK Protocol Buffers JWT de conta de serviço Código-fonte completo

Cada componente e propriedade →

O sgcHTTP implementa as superfícies publicadas de HTTP/2, gRPC e Google Cloud REST, em vez de encapsular um SDK de fornecedor, então streams, cabeçalhos, RPCs e notificações push são todos métodos e eventos de primeira classe, e o código-fonte completo significa que nada no meio do caminho é uma caixa-preta.

Doze Bibliotecas, Uma Caixa de Ferramentas

O sgcHTTP é uma das doze bibliotecas de componentes da eSeGeCe para Delphi, C++ Builder e .NET. Elas compartilham convenções, vêm com código-fonte completo e são implantadas sem royalties.

sgcHTTP

Cliente HTTP/2, cliente gRPC e clientes Google Cloud Pub/Sub, Calendar e FCM para Delphi e C++ Builder. Autônomo, com o runtime sgcWebSockets Core incluído.

Saiba mais →

sgcAuth

Cliente OAuth2, cliente JWT e suporte a WebAuthn para Delphi e C++ Builder. Autônomo, com o runtime sgcWebSockets Core incluído.

Saiba mais →

sgcWebSockets

WebSocket, HTTP/2, MQTT, AMQP, WebRTC, IA e mais de 30 integrações de API para Delphi, C++ Builder, Lazarus e .NET. A edição Enterprise também inclui o gRPC.

Saiba mais →

sgcMQ

Componentes cliente de MQTT, AMQP 0.9.1 e 1.0, Apache Kafka e STOMP para Delphi e C++ Builder. Autônomo, com o runtime sgcWebSockets Core incluído.

Saiba mais →

sgcSocial

Componentes cliente de Telegram e WhatsApp Business para Delphi e C++ Builder. Autônomo, com o runtime sgcWebSockets Core incluído.

Saiba mais →

sgcHTML

Componentes de HTML e interface do lado do servidor, sobre Bootstrap 5 e htmx, para Delphi, C++ Builder e .NET.

Saiba mais →

sgcQUIC

Transporte QUIC bruto e um cliente e servidor HTTP/3, com WebTransport. Um complemento do sgcWebSockets Enterprise.

Saiba mais →

sgcAI

Componentes de IA, LLM e MCP para Delphi e C++ Builder. Sete provedores de LLM por trás de um único componente, além de MCP, embeddings e fala. Autônomo, com o runtime sgcWebSockets Core incluído.

Saiba mais →

sgcOpenAPI

Analisador OpenAPI 3.x, gerador nativo de SDK Pascal, componente servidor OpenAPI, e mais de 1.195 SDKs de nuvem pré-compilados.

Saiba mais →

sgcSign

XAdES, PAdES, CAdES e ASiC para documentos, Authenticode, ClickOnce, NuGet e VSIX para código.

Saiba mais →

sgcBiometrics

Windows Hello, sensores de impressão digital e o Windows Biometric Framework para Delphi e C++ Builder.

Saiba mais →

sgcIndy

Componentes Indy TCP/IP atualizados com TLS moderno, IPv6 e HTTP/2, do Delphi 7 ao 13.

Saiba mais →

Ver preços e licenças Baixar a versão de avaliação gratuita

O Que os Desenvolvedores Dizem

Confiado por desenvolvedores Delphi, C++ Builder, Lazarus e .NET ao redor do mundo.

A biblioteca sgcWebSockets de vocês é muito útil e fácil de configurar. Continuem com o ótimo trabalho!

Simone Moretti Desenvolvedor Delphi

O sgcWebSockets é incrível e o suporte de vocês é o melhor!

Christian Meyer Fundador & CTO

Muito obrigado pela ajuda e pelo suporte, eu adoro os componentes de vocês.

Mark Steinfeld CTO

Você está vendo a visão de HTTP/2 e gRPC da eSeGeCe.

Mostre outro ângulo →

HTTP Moderno, gRPC e Google Cloud a partir de Código Nativo

HTTP/2 multiplexado, gRPC em streaming e três clientes Google Cloud, com o runtime sgcWebSockets Core incluído e código-fonte completo na caixa.