功能概览
sgcWebSockets 是一个跨平台库,用于实现实时客户端-服务器通信。完全以 Delphi 构建,支持 Windows、Linux、macOS、iOS 和 Android,针对低延迟、高吞吐量应用进行了性能优化。
sgcWebSockets 是一个跨平台库,用于实现实时客户端-服务器通信。完全以 Delphi 构建,支持 Windows、Linux、macOS、iOS 和 Android,针对低延迟、高吞吐量应用进行了性能优化。
为每个实时应用提供坚实的基础。
支持 Windows、Linux 64 位、macOS、iOS 和 Android。单一代码库完整支持 VCL 和 FireMonkey。
符合 RFC 6455 的 WebSocket 服务器,Windows 上使用 IOCP,Linux 上使用 EPOLL,实现最大并发连接数。
服务器和客户端均支持 OpenSSL 和 SChannel 后端的完整加密。内置证书管理。
完整支持二进制帧和 Unicode 文本消息。原生传输文件、图片和结构化数据。
PerMessage-Deflate 扩展可将带宽消耗减少高达 80%,支持可配置的压缩级别。
WebSocket、HTTP/1.1 和 HTTP/2.0 连接共用同一端口,无需单独的服务器。
内置机制,保持连接健康并确保消息可靠传递。
以可配置间隔自动 ping/pong。及早检测断开的连接,并通过防火墙保持连接活跃。
客户端自动重连,服务器在意外断开后自动重启。零停机时间恢复。
三种 QoS 级别:至多一次、至少一次和恰好一次交付,满足各种可靠性需求。
持久化消息存储,支持可配置级别。重新连接后重放错过的消息。
StartTransaction、Commit 和 Rollback 方法,用于原子性多步操作。
按连接限制每秒传输比特数。防止带宽滥用,确保公平的资源分配。
多种策略保护您的 WebSocket 连接安全。
标准 HTTP 基本身份验证,用于用户名/密码凭据验证。
完整支持客户端和服务器端 OAuth2。与身份提供者集成,实现基于令牌的身份验证。
服务器端会话管理和基于令牌的 URL 参数身份验证,适用于浏览器客户端。
只需几行 Delphi 代码即可创建 WebSocket 服务器。
uses
sgcWebSocket_Server, sgcWebSocket_Types;
var
WSServer: TsgcWebSocketHTTPServer;
procedure TForm1.FormCreate(Sender: TObject);
begin
WSServer := TsgcWebSocketHTTPServer.Create(nil);
WSServer.Port := 8080;
WSServer.SSL := True;
WSServer.OnMessage := OnMessage;
WSServer.Active := True;
end;
procedure TForm1.OnMessage(Connection: TsgcWSConnection;
const aText: string);
begin
// Echo the message back to the client
Connection.WriteData(aText);
end;