AI智能
改变未来

C# websocketsharp 客户端使用快速上手


阅前提示

Websocket-sharp提供了实现WebSocket协议客户端和服务器。支持: RFC 6455; 创建客户端和服务器;数据压缩扩展; 安全连接;HTTP身份验证; 查询字符串、header、Cookie ;通过HTTP代理服务器连接 ;.NET Framework 3.5 or
later(包括兼容环境,如Mono)

适合人群 :C#+websocket 使用者
阅读方式:浏览

下载

Github源码

构建

websocket-sharp 只有一个程序集 websocket-sharp.dll
使用VS或者其他工具打开 websocket-sharp.sln 并生成dll文件即可。
将websocket-sharp.dll 放入Unity工程中的Plugins文件夹中。

使用

创建

_websocket = new WebSocket (url)//可以使用using 当出现错误code1001时会关闭websocketusing(var ws new WebSocket (url)){...}

监听

//连接成功时被调用_websocket.OnOpen += (sender, e) => {...}//接收消息,分为字符串消息、字节型消息、单纯的ping_websocket.OnMessage += (sender, e) =>{//MessageEventArgs e//e.Data => string text message//e.RawData => byte[] binary messageif (e.IsText) {...};if(e.IsBinary){...};if(e.IsPing){...};}//接收错误消息,字符串提示与抛出的Exception_websocket.OnError += (sender, e) =>{//ErrorEventArgs e//e.Message  e.Exception}//连接断开时_websocket.OnClose += (sender, e) => {...}

这里的OnMessage 被多线程所管理。websocket-sharp 使用ThreadPool管理消息接收,如有需求要自行设置最大和最小线程数

建立连接、发送消息、关闭连接

//连接 & 异步连接_websocket.Connect ();_websocket.ConnectAsync();//发送信息 & 异步_websocket.Send (byte[] data);_websocket.Send (string data);_websocket.Send (FileInfo fileInfo);_websocket.SendAsync (byte[] data, Action<bool> completed);//关闭_websocket.Close();
赞(0) 打赏
未经允许不得转载:爱站程序员基地 » C# websocketsharp 客户端使用快速上手