写到现在终于开始真正的业务逻辑了=======
楼主也是学习的方式记录帖子,不一定都是对的。有什么明显的错误,可以希望大家指正。
1、工具选用
这里楼主用的是netassist下载地址,具体用什么工具都是可以的,只要能发送tcp就行,这里楼主也是临时百度下载的。
连接上我们本地主机就开始把。
这里用的JSON转换在线工具地址,当然也是临时百度,能用就行。
2、发送前的准备
根据types.js我们写入
转换成字符串
发送=>
3、登录
因为我们学习unity,所以我们注册和登录,为一体,只要登录成功了就返回一个client塞入clientList中,反之则结束socket。所以客户端连接成功后要立马发送登录来得到持续的tcp连接。
删除server中的下面这行
删除后===
添加addClientList方法
添加 User中的getToken、setToken方法
连接5秒后未执行登录则销毁该socket
根据typs.js创建登录的函数
client类中创建getServer和getUser函数
考虑到要返回对应的pack,调整一下ControllerManager.js中的代码
改为:
添加login中的逻辑
发送一下上述的JSON,发现报错:
排查一遍后发现,是this丢失的问题,我们调整一下代码
调整后:
在跑一下:
成功了
试试不传name
直接断开了。
再试试只连接不发送5秒后自动关闭了
好了 登录模块做好了
4、退出
添加退出的标识和方法
编写逻辑
调用成功,哦耶
对应的GitHub地址为:GitHub
该系列的其他篇幅:
独立游戏开发学习(一)
独立游戏开发学习(二)-Stable Diffusion的运用
独立游戏开发学习(三)-联机服务器的搭建tcp篇
独立游戏开发学习(四)-编写tcp交互中间层
独立游戏开发学习(五)-添加心跳处理失效的连接