Delphi WebSocket İstemcisi
TsgcWebSocketClient — SSL/TLS, proxy desteği, mesaj sıkıştırma ve otomatik yeniden bağlanma içeren, Delphi ve C++ Builder için tam özellikli bir WebSocket istemci bileşeni.
TsgcWebSocketClient — SSL/TLS, proxy desteği, mesaj sıkıştırma ve otomatik yeniden bağlanma içeren, Delphi ve C++ Builder için tam özellikli bir WebSocket istemci bileşeni.
İstemci WebSocket bileşeni. Herhangi bir RFC 6455 WebSocket sunucusuna bağlanır ve metin ile ikili mesajlar alışverişinde bulunur.
TsgcWebSocketClient
WebSocket — RFC 6455
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Host, Port ve TLS ayarlayın, OnMessage olayını ele alın, ardından bağlantıyı etkinleştirin. El sıkışma, çerçeveleme ve ping/pong sizin yerinize yönetilir.
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 yayımlanmış özellik, 22 metot ve 16 olay. Doğrudan bileşen referansından alınmıştır.
Host, Port, URL, TLS, IPVersion ve Active senkron veya asenkron bir bağlantı açar. Connect/Disconnect çağıranı bloke eder, Start/Stop bir çalışan iş parçacığında çalışır.
HeartBeat, bir zamanlayıcı üzerinden WebSocket ping çerçeveleri gönderir; WatchDog, beklenmedik bir kopmadan sonra otomatik olarak yeniden bağlanır. OnBeforeHeartBeat ve OnBeforeWatchDog her döngüyü özelleştirmenize olanak tanır.
TLSOptions, IOHandler'ı (OpenSSL veya SChannel), TLS sürümünü (1.0–1.3) ve ALPN'yi seçer; Proxy, el sıkışmayı HTTP veya SOCKS üzerinden yönlendirir; Authentication, Basic / Bearer / özel şemaları ele alır.
WriteData, isteğe bağlı parçalama ile bir metin çerçevesi gönderir; WriteAndWaitData, eş yanıt verene kadar bloke eder; Ping, bir ping çerçevesi gönderir. OnMessage, OnBinary ve OnFragmented gelen verileri sunar.
Extensions.PerMessage_Deflate, RFC 7692 sıkıştırması üzerinde anlaşır; Throttle, her iki yönde de saniye başına bit sayısını sınırlar; QueueOptions, bağlantı iş parçacığındaki Text / Binary / Ping yazmalarını sıralar.
LogFile, ham gelen ve giden trafiği diske döker; NotifyEvents, olayların ana iş parçacığına nasıl gönderileceğini seçer; OnException, OnError ve OnHandshake protokol düzeyinde ayrıntıları ortaya çıkarır.
Bileşen referansına doğrudan bağlanın, çalışmaya hazır demo projesini alın ve denemeyi indirin.
| Çevrimiçi Yardım — TsgcWebSocketClient Bu bileşen için tam özellik, metot ve olay referansı. | Aç | |
| Demo Projesi — 01.WebSocket\01.Client Çalışmaya hazır örnek proje. sgcWebSockets paketinin içinde gelir. Aşağıdan denemeyi indirin. | Aç | |
| Teknik Belge (PDF) Özellikler, hızlı başlangıç, Delphi, C++ Builder ve .NET için kod örnekleri ve birincil kaynak referansları. Yalnızca bu bileşen. | Aç | |
| Kullanıcı Kılavuzu (PDF) Kütüphanedeki her bileşeni kapsayan kapsamlı kılavuz. | Aç |