从 sgcWebSockets 4.4.8 开始,sgcWebSockets .NET 库支持 WebSocket 文件协议。
该协议允许使用二进制 WebSocket 传输发送文件,可以以较低的内存占用处理大文件。
功能特性
- 发布/订阅消息模式,实现一对多消息分发和应用解耦。
- 已发送消息的确认机制。
- 为文件传输实现 QoS(服务质量)保障。
- 可选择对接收的文件请求授权验证。
- 低内存占用。
代码示例
要向服务器发送文件,只需调用文件协议的 SendFile 方法并将完整的文件名作为参数传入即可。
服务器接收到的文件默认保存在服务器可执行文件所在的同一目录中,或保存在 Files.SaveDirectory 属性中设置的路径下。
// ... Create Server
TsgcWebSocketServer oServer = new TsgcWebSocketServer();
TsgcWSPServer_Files oServer_Files = new TsgcWSPServer_Files();
oServer_Files.Server = oServer;
oServer.Host = "127.0.0.1";
oServer.Port = 8080;
// ... Create Client
TsgcWebSocketClient oClient = new TsgcWebSocketClient();
oClient.URL = "ws://127.0.0.1:8080";
// ... Create Protocol
TsgcWSPClient_Files oClient_Files = new TsgcWSPClient_Files();
oClient_Files.Client = oClient;
// ... Start Server
oServer.Active = true;
// ... Connect client and Send File
if oClient.Connect() then
oClient_Files.SendFile("c:\Documents\yourfile.txt");
