Delphi WebSocket-client
TsgcWebSocketClient — een volledig uitgerust WebSocket-clientcomponent voor Delphi en C++ Builder met SSL/TLS, proxy-ondersteuning, berichtcompressie en automatische reconnect.
TsgcWebSocketClient — een volledig uitgerust WebSocket-clientcomponent voor Delphi en C++ Builder met SSL/TLS, proxy-ondersteuning, berichtcompressie en automatische reconnect.
WebSocket-clientcomponent — verbindt met elke RFC 6455-WebSocket-server en wisselt tekst- en binaire berichten uit.
TsgcWebSocketClient
WebSocket — RFC 6455
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Stel Host, Port en TLS in, handel OnMessage af en activeer de verbinding. De handshake, framing en ping/pong worden voor je beheerd.
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 published properties, 22 methodes en 16 events — rechtstreeks uit de componentreferentie.
Host, Port, URL, TLS, IPVersion en Active openen een synchrone of asynchrone verbinding. Connect/Disconnect blokkeren de aanroeper, Start/Stop draaien op een worker-thread.
HeartBeat verstuurt WebSocket-ping-frames op een timer; WatchDog reconnect automatisch na een onverwachte drop. OnBeforeHeartBeat en OnBeforeWatchDog laten je elke cyclus aanpassen.
TLSOptions kiest de IOHandler (OpenSSL of SChannel), TLS-versie (1.0–1.3) en ALPN; Proxy routeert de handshake via HTTP of SOCKS; Authentication verwerkt Basic / Bearer / aangepaste schema's.
WriteData verstuurt een text-frame met optionele fragmentatie; WriteAndWaitData blokkeert tot de peer antwoordt; Ping verstuurt een ping-frame. OnMessage, OnBinary en OnFragmented leveren binnenkomende data.
Extensions.PerMessage_Deflate onderhandelt RFC 7692-compressie; Throttle begrenst bits-per-seconde in beide richtingen; QueueOptions serialiseert Text / Binary / Ping-writes op de connection-thread.
LogFile dumpt het ruwe inkomende en uitgaande verkeer naar schijf; NotifyEvents kiest hoe events naar de hoofdthread worden gedispatchet; OnException, OnError en OnHandshake brengen protocol-details aan het licht.
Deep-link naar de componentreferentie, pak het kant-en-klare demoproject en download de proefversie.
| Online help — TsgcWebSocketClient Volledige referentie van eigenschappen, methodes en events voor dit component. | Openen | |
| Demoproject — 01.WebSocket\01.Client Kant-en-klaar voorbeeldproject. Wordt meegeleverd in het sgcWebSockets-pakket — download hieronder de proefversie. | Openen | |
| Technisch document (PDF) Functies, snelstart, codevoorbeelden voor Delphi, C++ Builder en .NET en primaire bronverwijzingen — alleen voor dit component. | Openen | |
| Gebruikershandleiding (PDF) Uitgebreide handleiding die elk component in de bibliotheek behandelt. | Openen |