Delphi WebSocket サーバー
TsgcWebSocketHTTPServer — IOCP/EPOLL 対応、SSL/TLS、認証、静的ファイル配信を備えたマルチスレッド WebSocket および HTTP サーバーコンポーネントです。
TsgcWebSocketHTTPServer — IOCP/EPOLL 対応、SSL/TLS、認証、静的ファイル配信を備えたマルチスレッド WebSocket および HTTP サーバーコンポーネントです。
HTTP + WebSocket サーバー — wss:// ハンドシェイクを処理し、メッセージをブロードキャスト。TLS、認証、ロードバランサー登録、HTTP/2 を内蔵しています。
TsgcWebSocketHTTPServer
WebSocket — RFC 6455
Windows, macOS, Linux, iOS, Android
Professional / Enterprise
TsgcWebSocketHTTPServer を配置し、Port と SSL を設定して OnMessage を接続するだけでサーバーが稼働します。
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;
公開プロパティ 27 件、メソッド 7 件、イベント 22 件(コンポーネントリファレンスより)。
Published properties: Active, Port, Bindings.
Methods: Broadcast, WriteData, Ping.
Published properties: HeartBeat, WatchDog, LoadBalancer.
Published properties: Authentication, SSL, SSLOptions.
Events: OnStartup, OnShutdown, OnTCPConnect.
Events: OnMessage, OnBinary, OnFragmented.
コンポーネントリファレンスへのディープリンク、すぐに実行可能なデモプロジェクト、そして体験版のダウンロードはこちらです。
| オンラインヘルプ — TsgcWebSocketServer 本コンポーネントのプロパティ、メソッド、イベントの完全なリファレンスです。 | 開く | |
| デモプロジェクト — 01.WebSocket\02.Server すぐに実行可能なサンプルプロジェクトです。sgcWebSockets パッケージに同梱されています。下記より体験版をダウンロードしてください。 | 開く | |
| 技術ドキュメント (PDF) 本コンポーネントのみを対象とした機能解説、クイックスタート、Delphi・C++ Builder・.NET のコードサンプル、一次資料への参照を収録しています。 | 開く | |
| ユーザーマニュアル (PDF) ライブラリ内のすべてのコンポーネントを網羅した総合マニュアルです。 | 開く |