Cliente WebSocket Delphi
TsgcWebSocketClient — um componente cliente WebSocket completo para Delphi e C++ Builder com SSL/TLS, suporte a proxy, compressão de mensagens e reconexão automática.
TsgcWebSocketClient — um componente cliente WebSocket completo para Delphi e C++ Builder com SSL/TLS, suporte a proxy, compressão de mensagens e reconexão automática.
Componente cliente WebSocket — conecta-se a qualquer servidor WebSocket RFC 6455 e troca mensagens de texto e binárias.
TsgcWebSocketClient
WebSocket — RFC 6455
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Configure Host, Port e TLS, trate OnMessage e ative a conexão. O handshake, enquadramento e ping/pong são gerenciados para você.
uses
sgcWebSocket_Client, sgcWebSocket_Classes;
var
oClient: TsgcWebSocketClient;
begin
oClient := TsgcWebSocketClient.Create(nil);
oClient.Host := '127.0.0.1';
oClient.Port := 80;
oClient.TLS := True;
oClient.Options.Parameters := '/ws/';
oClient.OnConnect := OnConnect;
oClient.OnMessage := OnMessage;
oClient.OnDisconnect := OnDisconnect;
oClient.Active := True;
end;
procedure TForm1.OnMessage(Connection: TsgcWSConnection;
const Text: string);
begin
Memo1.Lines.Add(Text);
end;
// Send a text frame
oClient.WriteData('hello');
// uses: sgcWebSocket_Client, sgcWebSocket_Classes
TsgcWebSocketClient *oClient = new TsgcWebSocketClient(this);
oClient->Host = "127.0.0.1";
oClient->Port = 80;
oClient->TLS = true;
oClient->Options->Parameters = "/ws/";
oClient->OnConnect = OnConnect;
oClient->OnMessage = OnMessage;
oClient->OnDisconnect = OnDisconnect;
oClient->Active = true;
void __fastcall TForm1::OnMessage(TsgcWSConnection *Connection,
const UnicodeString Text)
{
Memo1->Lines->Add(Text);
}
// Send a text frame
oClient->WriteData("hello");
using esegece.sgcWebSockets;
var client = new TsgcWebSocketClient();
client.Host = "127.0.0.1";
client.Port = 80;
client.TLS = true;
client.Options.Parameters = "/ws/";
client.OnConnect += (conn) => Console.WriteLine("#connected: " + conn.IP);
client.OnDisconnect += (conn, code) => Console.WriteLine("#disconnected: " + code);
client.OnMessage += (conn, text) => Console.WriteLine(text);
client.Active = true;
// Send a text frame
client.WriteData("hello");
23 propriedades publicadas, 22 métodos e 16 eventos — extraídos diretamente da referência do componente.
Host, Port, URL, TLS, IPVersion e Active abrem uma conexão síncrona ou assíncrona. Connect/Disconnect bloqueiam o chamador; Start/Stop executam em uma thread de trabalho.
HeartBeat envia frames de ping WebSocket por temporizador; WatchDog reconecta automaticamente após uma queda inesperada. OnBeforeHeartBeat e OnBeforeWatchDog permitem personalizar cada ciclo.
TLSOptions seleciona o IOHandler (OpenSSL ou SChannel), a versão TLS (1.0–1.3) e ALPN; Proxy roteia o handshake via HTTP ou SOCKS; Authentication lida com esquemas Basic / Bearer / personalizados.
WriteData envia um frame de texto com fragmentação opcional; WriteAndWaitData bloqueia até o par responder; Ping envia um frame de ping. OnMessage, OnBinary e OnFragmented entregam dados recebidos.
Extensions.PerMessage_Deflate negocia compressão RFC 7692; Throttle limita bits por segundo em qualquer direção; QueueOptions serializa escritas de Text / Binary / Ping na thread de conexão.
LogFile grava tráfego bruto de entrada e saída em disco; NotifyEvents seleciona como os eventos são despachados para a thread principal; OnException, OnError e OnHandshake expõem detalhes do nível de protocolo.
Acesse a referência do componente, obtenha o projeto de demonstração pronto para executar e baixe a versão de avaliação.
| Ajuda Online — TsgcWebSocketClient Referência completa de propriedades, métodos e eventos deste componente. | Open | |
| Projeto de Demo — 01.WebSocket\01.Client Projeto de exemplo pronto para executar. Incluído no pacote sgcWebSockets — baixe a versão de avaliação abaixo. | Open | |
| Documento Técnico (PDF) Recursos, início rápido, exemplos de código para Delphi, C++ Builder e .NET e referências de fonte primária — somente este componente. | Open | |
| Manual do Usuário (PDF) Manual abrangente cobrindo todos os componentes da biblioteca. | Open |