在日常碰到的项目中,有些场景下不适合使用tcp常连接,而需要靠UDP无连接的数据收发。那么如何使用SharpSocket完成UDP收发数据呢?其中要掌握的关键点是什么呢?
服务端的实现
设置授权
第一步:在引用了SharpSocket.dll之后,调用SharpSocket方法之前,一定要先通过下面代码来设置授权信息,如果是试用版,直接输入Test即可。
1 | KeyMgr.SetKey("Test", "Test"); |
获取IUdp的示例
从之前的一篇博文中,我们介绍了一张图看懂SharpSocket,从那篇文章我们可以看出,SharpSocket通过IUdp来实现udp协议。udp不区分服务端和客户端,因此都使用该接口。那么如何获取该接口的示例,从而使用该接口提供的各个方法呢?请看下面的代码:
1 | //创建一个接口实例,然后就可以操作它了 |
绑定事件
绑定收到数据的事件MessageReceived。引擎会将数据上交给该事件的响应函数上,您就可以进行下一步的分析。
1 | //订阅本接口的收到数据的事件通知,当收到数据后,自动回调您注册的方法 |
启动
处理完上述步骤后,服务就正式启动了。如下:
1 | udpServerInstance.Initialize(); |
客户端的实现
设置授权
第一步:在引用了SharpSocket.dll之后,调用SharpSocket方法之前,一定要先通过下面代码来设置授权信息,如果是试用版,直接输入Test即可。
1 | KeyMgr.SetKey("Test", "Test"); |
获取IUdp示例
第二步:获取IUdp的示例。代码如下:
1 | //初始化并启动客户端引擎(UDP) |
绑定事件
绑定收到数据的事件MessageReceived。引擎会将数据上交给该事件的响应函数上,您就可以进行下一步的分析。
1 | //订阅本接口的收到数据的事件通知,当收到数据后,自动回调您注册的方法 |
发送数据到服务端
您可以随时发送数据到服务端,如下:
1 | //得到服务端终结点 |