TsgcWebSocketClient ist der .NET-Wrapper um den sgcWebSockets-Runtime-Client. Er erbt alle grundlegenden WebSocket-Fähigkeiten von TsgcWebSocketClient_base und stellt .NET-Anwendungen eine komponentenartige API zum Verbinden, Senden und Empfangen über WebSockets bereit.
Wichtige Eigenschaften
- Host & Port – Ziel-Server-Endpunkt
- Options.Parameters – URL-Pfad oder Query-Parameter für den WebSocket-Handshake
- TLS & TLSOptions – TLS aktivieren und Protokollversion/IO-Handler auswählen
- Specifications.RFC6455 – RFC6455-WebSocket-Framing-Konformität umschalten
- Proxy – HTTP-Proxy-Konfiguration (Enabled, Username, Password, Host, Port)
- Extensions.PerMessage_Deflate.Enabled – Per-Message-Kompression aktivieren
- Authentication – Basic-Authentication-Zugangsdaten, falls benötigt
- Active – auf
truesetzen zum Verbinden, auffalsezum Trennen
Ereignisse
Registriere Ereignis-Handler, um auf den Verbindungs-Lebenszyklus und Daten zu reagieren:
- OnConnect – wird nach erfolgreicher Verbindung ausgelöst; der Beispiel-Handler loggt die Peer-IP
- OnDisconnect – wird ausgelöst, wenn die Verbindung geschlossen wird, und liefert den Close-Code
- OnMessage – empfängt Text-Nachrichten vom Server
- OnError – meldet Protokoll- oder Socket-Fehler
- OnException – legt unerwartete, in der Komponente ausgelöste Exceptions offen
Beispiel
using esegece.sgcWebSockets;
var client = new TsgcWebSocketClient();
client.OnConnect += OnConnectEvent;
client.OnDisconnect += OnDisconnectEvent;
client.OnException += OnExceptionEvent;
client.OnError += OnErrorEvent;
client.OnMessage += OnMessageEvent;
client.Host = "www.esegece.com";
client.Port = 2052;
client.Options.Parameters = "/";
client.TLS = false;
client.Specifications.RFC6455 = true;
client.Active = true;
// Sending data once connected
client.WriteData("Hello WebSocket!");
Dieser Ausschnitt spiegelt die Demo-Nutzung wider: Ereignisse werden vor dem Verbinden verdrahtet, wichtige Eigenschaften werden konfiguriert (Host, Port, TLS, RFC6455 usw.), und das Setzen von Active auf true initiiert die Verbindung.
Mit den oben gezeigten Ereignis-Handlern kann der Client Verbindungen loggen, Nachrichten empfangen und über WriteData Daten senden.
