在正式开始讲之前,我们需要明确GF的Network模块的运行机制,感觉说起来太抽象了,上UML吧
应该。。。不难理解吧
在这个案例中,为了迎合ET的服务端,协议为,前2个字节代表消息的长度, 第3个字节代表消息flag,1表示rpc消息,0表示普通消息 第4和第5个字节表示消息的Id
项目结构图(我做了修改。。。方便讲解)
来到程序入口ProcedureNetSample
说一下HotfixMessage.proto的作用,因为所有的消息都是需要被响应的,比如你客户端发送登录请求(C2S_Login),服务端要对这个消息(S2C_Login)进行回应吧,如果这个时候,这两个都需要改动一下,直接编辑proto文件,直接复制粘贴到服务端,生成代码,即可。
至于ET那边,已经不属于GF的范畴了,主要就是收到客户端发送的消息,进行解析,然后给客户端回消息
更多细节大家自己追踪以下代码即可