Client WebSocket Delphi
TsgcWebSocketClient — un composant client WebSocket complet pour Delphi et C++ Builder avec SSL/TLS, prise en charge du proxy, compression des messages et reconnexion automatique.
TsgcWebSocketClient — un composant client WebSocket complet pour Delphi et C++ Builder avec SSL/TLS, prise en charge du proxy, compression des messages et reconnexion automatique.
Composant client WebSocket — se connecte à tout serveur WebSocket RFC 6455 et échange des messages texte et binaires.
TsgcWebSocketClient
WebSocket — RFC 6455
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Définis Host, Port et TLS, gère OnMessage, puis active la connexion. La poignée de main, le framing et le ping/pong sont gérés pour toi.
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 propriétés publiées, 22 méthodes et 16 événements — directement issus de la référence du composant.
Host, Port, URL, TLS, IPVersion et Active ouvrent une connexion synchrone ou asynchrone. Connect/Disconnect bloquent l'appelant, Start/Stop s'exécutent sur un thread de travail.
HeartBeat envoie des trames ping WebSocket sur un minuteur ; WatchDog se reconnecte automatiquement après une coupure inattendue. OnBeforeHeartBeat et OnBeforeWatchDog te permettent de personnaliser chaque cycle.
TLSOptions sélectionne l'IOHandler (OpenSSL ou SChannel), la version TLS (1.0–1.3) et ALPN ; Proxy route la poignée de main via HTTP ou SOCKS ; Authentication gère les schémas Basic / Bearer / personnalisés.
WriteData envoie une trame texte avec fragmentation optionnelle ; WriteAndWaitData bloque jusqu'à la réponse du pair ; Ping envoie une trame ping. OnMessage, OnBinary et OnFragmented livrent les données entrantes.
Extensions.PerMessage_Deflate négocie la compression RFC 7692 ; Throttle plafonne les bits par seconde dans chaque sens ; QueueOptions sérialise les écritures Text / Binary / Ping sur le thread de connexion.
LogFile écrit sur disque le trafic brut entrant et sortant ; NotifyEvents sélectionne la manière dont les événements sont dispatchés vers le thread principal ; OnException, OnError et OnHandshake exposent les détails au niveau du protocole.
Lien direct vers la référence du composant, récupère le projet de démo prêt à l'emploi et télécharge l'essai.
| Aide en ligne — TsgcWebSocketClient Référence complète des propriétés, méthodes et événements de ce composant. | Ouvrir | |
| Projet de démo — 01.WebSocket\01.Client Projet d'exemple prêt à l'emploi. Livré avec le paquet sgcWebSockets — télécharge l'essai ci-dessous. | Ouvrir | |
| Document technique (PDF) Fonctionnalités, démarrage rapide, exemples de code pour Delphi, C++ Builder et .NET, et références de sources primaires — ce composant uniquement. | Ouvrir | |
| Manuel utilisateur (PDF) Manuel complet couvrant chaque composant de la bibliothèque. | Ouvrir |