TsgcWebSocketClient, sgcWebSockets çalışma zamanı istemcisini saran .NET sarmalayıcısıdır. Tüm temel WebSocket yeteneklerini TsgcWebSocketClient_base'den devralır ve .NET uygulamalarına WebSocket üzerinden bağlanma, gönderme ve alma için bileşen tarzında bir API sunar
Temel Özellikler
- Host & Port – hedef sunucu uç noktası
- Options.Parameters – WebSocket el sıkışması için URL yolu veya sorgu parametreleri
- TLS & TLSOptions – TLS'i etkinleştirin ve protokol sürümünü/IO işleyicisini seçin
- Specifications.RFC6455 – RFC6455 WebSocket çerçeveleme uyumluluğunu açıp kapatın
- Proxy – HTTP proxy yapılandırması (Enabled, Username, Password, Host, Port)
- Extensions.PerMessage_Deflate.Enabled – mesaj başına sıkıştırmayı etkinleştirin
- Authentication – gerektiğinde temel kimlik doğrulama bilgileri
- Active – bağlanmak için
true, bağlantıyı kesmek içinfalseolarak ayarlayın
Olaylar
Bağlantı yaşam döngüsüne ve verilere tepki vermek için olay işleyicilerini kaydedin:
- OnConnect – başarılı bir bağlantıdan sonra tetiklenir; örnek işleyici karşı tarafın IP'sini günlüğe kaydeder
- OnDisconnect – bağlantı kapandığında tetiklenir ve kapatma kodunu sağlar
- OnMessage – sunucudan metin mesajları alır
- OnError – protokol veya soket hatalarını bildirir
- OnException – bileşen içinde ortaya çıkan beklenmeyen istisnaları açığa çıkarır
Örnek
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!");
Bu kod parçası demo kullanımını yansıtır: olaylar bağlanmadan önce bağlanır, temel özellikler yapılandırılır (host, port, TLS, RFC6455 vb.) ve Active değerinin true olarak ayarlanması bağlantıyı başlatır.
Olay işleyicileri tanımlandığında (yukarıda gösterildiği gibi), istemci bağlantıları günlüğe kaydedebilir, mesaj alabilir ve WriteData aracılığıyla veri gönderebilir.
