Delphi WebSocket-Server — sgcWebSockets | eSeGeCe

Delphi WebSocket-Server

TsgcWebSocketHTTPServer — eine multithreaded WebSocket- und HTTP-Server-Komponente mit IOCP/EPOLL-Unterstützung, SSL/TLS, Authentifizierung und Auslieferung statischer Dateien.

TsgcWebSocketHTTPServer

HTTP- + WebSocket-Server — verarbeitet wss://-Handshakes, sendet Nachrichten im Broadcast und bringt integrierte TLS-, Authentifizierungs-, Load-Balancer-Registrierungs- und HTTP/2-Funktionen mit.

Komponentenklasse

TsgcWebSocketHTTPServer

Protokoll

WebSocket — RFC 6455

Plattformen

Windows, macOS, Linux, iOS, Android

Edition

Professional / Enterprise

Komponente platzieren, ein paar Eigenschaften setzen, los geht's

Platziere einen TsgcWebSocketHTTPServer, setze Port und SSL, verdrahte OnMessage und der Server läuft.

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;

Was steckt drin

27 veröffentlichte Eigenschaften, 7 Methoden, 22 Ereignisse — direkt aus der Komponentenreferenz.

Verbindung

Veröffentlichte Eigenschaften: Active, Port, Bindings.

Messaging

Methoden: Broadcast, WriteData, Ping.

Zuverlässigkeit

Veröffentlichte Eigenschaften: HeartBeat, WatchDog, LoadBalancer.

Sicherheit

Veröffentlichte Eigenschaften: Authentication, SSL, SSLOptions.

Lebenszyklus

Ereignisse: OnStartup, OnShutdown, OnTCPConnect.

Daten

Ereignisse: OnMessage, OnBinary, OnFragmented.

Spezifikationen & Referenzen

Maßgebliche Quellen für die Protokolle, die diese Komponente implementiert.

Dokumentation & Demos

Springe direkt zur Komponentenreferenz, hol dir das sofort lauffähige Demo-Projekt und lade die Testversion herunter.

Online-Hilfe — TsgcWebSocketServer Vollständige Eigenschaften-, Methoden- und Ereignisreferenz für diese Komponente.
Demo-Projekt — 01.WebSocket\02.Server Sofort lauffähiges Beispielprojekt. Im sgcWebSockets-Paket enthalten — lade die Testversion unten herunter.
Technisches Dokument (PDF) Funktionen, Schnellstart, Codebeispiele für Delphi, C++ Builder und .NET sowie Primärquellen — nur diese Komponente.
Benutzerhandbuch (PDF) Umfassendes Handbuch, das jede Komponente der Bibliothek behandelt.
Bestes Preis-Leistungs-Verhältnis: All-AccessAlle eSeGeCe-Produkte, inklusive Premium-Support, ab €1,059 pro Jahr.
All-Access-Preise ansehen

Bereit, deinen Server zu bauen?

Lade die kostenlose Testversion herunter und erstelle in wenigen Minuten einen hochperformanten WebSocket-Server.