Delphi WebSocket Sunucusu

TsgcWebSocketHTTPServer — IOCP/EPOLL desteği, SSL/TLS, kimlik doğrulama ve statik dosya sunma içeren çok iş parçacıklı bir WebSocket ve HTTP sunucu bileşeni.

TsgcWebSocketHTTPServer

HTTP + WebSocket sunucusu. wss:// el sıkışmalarını sunar, mesajları yayınlar ve yerleşik TLS, kimlik doğrulama, yük dengeleyici kaydı ve HTTP/2 ile birlikte gelir.

Bileşen sınıfı

TsgcWebSocketHTTPServer

Protokol

WebSocket — RFC 6455

Platformlar

Windows, macOS, Linux, iOS, Android

Sürüm

Professional / Enterprise

Bileşeni bırakın, birkaç özellik ayarlayın, başlayın

Bir TsgcWebSocketHTTPServer bırakın, Port ve SSL ayarlayın, OnMessage olayını bağlayın ve sunucu yayında.

uses
  sgcWebSocket, sgcWebSocket_Server, sgcWebSocket_Classes;

var
  WSServer: TsgcWebSocketHTTPServer;
begin
  WSServer := TsgcWebSocketHTTPServer.Create(nil);
  WSServer.Port := 80;

  WSServer.OnConnect       := WSServerConnect;
  WSServer.OnMessage       := WSServerMessage;
  WSServer.OnDisconnect    := WSServerDisconnect;
  WSServer.OnError         := WSServerError;
  WSServer.OnAuthentication := WSServerAuthentication;

  WSServer.Active := True;
end;

procedure TForm1.WSServerMessage(Connection: TsgcWSConnection;
  const Text: string);
begin
  // Broadcast to every connected client
  WSServer.WriteData(Text);
end;

procedure TForm1.WSServerAuthentication(Connection: TsgcWSConnection;
  aUser, aPassword: string; var Authenticated: Boolean);
begin
  Authenticated := (aUser = 'admin') and (aPassword = 's3cret');
end;
// uses: sgcWebSocket, sgcWebSocket_Server
TsgcWebSocketHTTPServer *WSServer = new TsgcWebSocketHTTPServer(this);
WSServer->Port = 80;

WSServer->OnConnect       = WSServerConnect;
WSServer->OnMessage       = WSServerMessage;
WSServer->OnDisconnect    = WSServerDisconnect;
WSServer->OnError         = WSServerError;
WSServer->OnAuthentication = WSServerAuthentication;

WSServer->Active = true;

void __fastcall TForm1::WSServerMessage(TsgcWSConnection *Connection,
    const UnicodeString Text)
{
  WSServer->WriteData(Text);
}
using esegece.sgcWebSockets;

var server = new TsgcWebSocketHTTPServer();
server.Port = 80;

server.OnConnect        += (conn) => Console.WriteLine("#connected: " + conn.IP);
server.OnMessage        += (conn, text) => server.WriteData(text);  // broadcast
server.OnDisconnect     += (conn, code) => Console.WriteLine("#disconnected: " + code);
server.OnAuthentication += (conn, user, pass, ref ok) => { ok = (user == "admin" && pass == "s3cret"); };

server.Active = true;

İçinde neler var

27 yayımlanmış özellik, 7 metot, 22 olay. Bileşen referansından alınmıştır.

Bağlantı

Yayımlanmış özellikler: Active, Port, Bindings.

Mesajlaşma

Metotlar: Broadcast, WriteData, Ping.

Güvenilirlik

Yayımlanmış özellikler: HeartBeat, WatchDog, LoadBalancer.

Güvenlik

Yayımlanmış özellikler: Authentication, SSL, SSLOptions.

Yaşam döngüsü

Olaylar: OnStartup, OnShutdown, OnTCPConnect.

Veri

Olaylar: OnMessage, OnBinary, OnFragmented.

Spesifikasyonlar ve referanslar

Bu bileşenin uyguladığı protokoller için yetkili kaynaklar.

Belgeler ve Demolar

Bileşen referansına doğrudan bağlanın, çalışmaya hazır demo projesini alın ve denemeyi indirin.

Çevrimiçi Yardım — TsgcWebSocketServer Bu bileşen için tam özellik, metot ve olay referansı.
Demo Projesi — 01.WebSocket\02.Server Çalışmaya hazır örnek proje. sgcWebSockets paketinin içinde gelir. Aşağıdan denemeyi indirin.
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.
Kullanıcı Kılavuzu (PDF) Kütüphanedeki her bileşeni kapsayan kapsamlı kılavuz.

Sunucunuzu oluşturmaya hazır mısınız?

Ücretsiz denemeyi indirin ve dakikalar içinde yüksek performanslı bir WebSocket sunucusu oluşturun.