Socket.IO for Unity 简要介绍
在项目中使用到了Socket.IO for unity这个Asset Store上免费的库,这里将简要的介绍一下它的结构,已经使用中的注意事项。
目录结构
上面为包的目录结构,简单的介绍一下具体的内容:
- JSONObject - 打包与解析JSON格式
- Prefabs - 简单的SocketIO客户端的Prefab,实际上其就是一个attach了SocketIOComponent的Unity GameObject
- Scences - Unity3d的测试Scene,用于简单测试
- Scripts - Unity3d的MonoBehavior 脚本和其使用到的类, 其实只有一个SocketIOComponent是脚本,其他都是该脚本使用到的帮助类
- Server - 目录下的存放的是NodeJs服务器端的测试Js脚本,对于于客户端的测试用例,在实际的开发中可以删除。
- WebSocketSharp- 目录下存放的是C#的WebSocket的实现,不依赖于任何Unity3d的代码。
- readme.txt - 简单的帮助文档,说明如何使用该package。
核心类解析
- SocketIOComponent
SocketIOComponent这个脚本是我们使用该Socket.IO for Unity package最重要的一个类,其集成了报文的封装,解析,回掉函数,Ping,Pong控制帧,以及WebSocket的数据传输。