creator使用 skynet 的 sproto 方法。

先说明,不提供生成SPB文件的方法,我自己是用服务器生成的,客户端和服务器公用一份,这样不用两边都修改。

js版的代码 是用这个https://github.com/zhangshiqian1214/sproto-js
只需要里面的sproto.js文件和utils.js两个

首先是读取 spb文件,s2c是服务端到客户端的协议spb文件,c2s是客户端到服务端的协议spb文件。

然后就是发送数据。


这样就可以发送数据了。

不过前提是websocket 你要设置一下

这样才能正确的发送二进制流

然后send_msg中的packbyte方法是我自己加的一个,在字节流前两位用大端的方式 表示数据的长度。
这个看你们服务端自己约定。

最后就是收消息

最终的re就是反序列化之后的明文数据了。

不过我修改了一下sproto.js


这个是为了针对c2s中 有response的那种协议:
c2s_signin_account 2 {
request {
UserCode 1 : string #验证登录用的
LoginToken 2 : string #验证登录用的
GameId 3 : string #验证登录用的
GameKey 4 : string #验证登录用的
}
response {
result 0 : integer # 登录结果 1表示登录成功 2 SDK验证失败
}
}
加了可以知道是哪条协议的response

好了。完

非常感谢,终于整成功了

这个在微信小游戏版本协议文件怎么上传,改.bin后缀?