Cocos Protobuf+websocket 服务端对接

1.客户端与服务器通讯全流程

  1. a.不同编程语言

数据对象(结构)------------序列化 ----------(二进制)------【protobuf】
------------> 文本(json,xml);

  1. b.打上数据标识:【服务号(2bit),命令号(2bit)】,通过标识,可以知道怎么处理该数据。
    网关:----->对应的命令====》对应的服务器-----------服务号----知道哪个请求;
    TCP:可靠的传输协议: 发数据— -----------回应-----------------再发;
    TCP底层:粘包分包 问题;
    TCP-----------------分包拆包;[size,数据内容,校验];
    H5简化组合成---------------WebSocket协议------------->分包拆包协议;
    WebSocket是 底层基于TCP的实现TCP封包,拆包问题 的协议;

TCP+自定义封包拆包协议+protobuf序列化工具;
Creator H5 , android, ios, websocket------ native实现
[WebSocket] + protobuf 序列化工具;
服务器也要支持WebSocket;

Protobuf作用:
协议定义工具
序列化/反序列化----------编码解码的库 dist/
在这里插入图片描述

编译工具--------协议----------> 目标语言的代码:C++. java;
javaScript是不一样的: -----加载协议文件----解析协议文件—运行时动态生成;
protobufs 下载地址: https://github.com/protocolbuffers/protobuf/releases

在cocos中 能够使用protobuf 需要protobufjs

官网参考文档:https://www.npmjs.com/package/protobufjs
https://docs.cocos.com/creator/3.5/manual/zh/scripting/modules/example.html
下载地址 protobufjs: https://www.jsdelivr.com/package/npm/protobufjs

在cocos 中引用该js
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

参考过的文档 : https://blog.csdn.net/qq_35627648/article/details/130008810

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
CocosCreator是一种基于 TypeScript的游戏开发引擎,而protobuf是一种数据序列化格式。要在CocosCreator中使用protobuf实现登录功能,首先需要进行以下几个步骤: 1. 下载protobuf库:在项目的assets目录中创建一个新的文件夹,例如"protobuf",然后从protobuf官方网站上下载protobuf的JavaScript库文件,并将其解压到该文件夹中。 2. 创建.proto文件:在项目的assets目录中创建一个新的文件,例如"login.proto",并在其中定义登录功能所需的消息结构。例如,可以定义一个"LoginRequest"消息,包含用户名和密码字段,并定义一个"LoginResponse"消息,表示登录结果。 3. 生成JavaScript代码:打开终端,进入到protobuf库所在的文件夹,执行以下命令来生成JavaScript代码文件: protoc --js_out=import_style=commonjs,binary:生成代码路径 -I=proto文件所在路径 proto文件 这将根据.proto文件生成对应的JavaScript代码文件,用于在CocosCreator中进行序列化和反序列化。 4. 在CocosCreator中使用protobuf:将生成的JavaScript代码文件拷贝到CocosCreator项目的assets目录中,然后在适当的地方引入protobuf库。 5. 编写登录功能代码:在需要实现登录功能的脚本文件中,使用引入的protobuf库来序列化登录请求数据,并将其发送到服务器,并处理服务器返回的响应数据。 总的来说,使用CocosCreatorprotobuf实现登录功能需要先创建.proto文件,然后通过protobuf库生成对应的JavaScript代码文件,并将其引入项目中,在代码中使用protobuf库进行消息的序列化和反序列化,以实现与服务器的通信。这样就可以在CocosCreator中使用protobuf来实现登录功能了。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值