Egret社区
79银子
大佬请教一下问题可以帮解一下么,我们公司有一个服务端是跟老史混的,听说牛批到不行,然后我们为了proto文件争论了,他是C++  然后协议也是他定的,定的是协议 是外面一层二进制协议嵌套protobuf协议,格式就是如下:主命令|子命令|protobuf文件大小[protobuf]  我是做WEB开发的,对二进制确实理解有点欠缺,
然后我按他这个格式发了消息包过去   他那边一直说解不到protobuf  我这边打印,然后我模拟本地解析都正常,然后就死喷我,说是我这边出问题了,说不懂二进制,我确实不太懂。说了这么多屁话我说想问一下,
格式就是如下:主命令|子命令|protobuf文件大小[protobuf]     200,3,8,[cmd:200,type:1,mapid:1001]   他说正常这种包打印出来是 200,3,8,200,1,1001   二进制打印出来是这样吗? 可是后面的是protobuf包呀 除了 前面3个能显示是200,3,8  后面的包不是protobuf协议吗 内存显示 不应该是key+val 应该是一大串二字节数据吗? 这个倒底谁说得对呀

有懂的大佬吗?求解答一下呀,我感觉我都快要被开除了,因为服务端是大公司出来的,老板信他的。。。。。

分享到 :
0 人收藏

20 个回复

倒序浏览
麻痹戒子  初窥堂奥 | 2019-4-27 13:34:07
大兄弟在哪里工作的呀  找工作吗..
23423  登堂入室 | 2019-4-27 14:17:53
最近 论坛 里出现很多要被开除的。你也要习惯 不一定大公司出来的就很牛。
tidy  登堂入室 | 2019-4-27 15:37:22
你这么想,这人为啥子在大公司待不下去了
我感觉,嘴上积点德好过技术压人
落幕夜未央  圆转纯熟 | 2019-4-27 15:39:19
本帖最后由 落幕夜未央 于 2019-4-27 15:43 编辑

主命令|子命令|protobuf文件大小[protobuf] 这句话我也很难理解。
我们服务器如果需要定,肯定会这样给前端说:
协议格式:
主命令 (4字节无符号)
子命令 (4字节无符号)
protobuf大小 (4字节无符号)
protobuf字节  。
这样前端就直接调用白鹭的byteArray,依次写入主命令,子命令,protobuf包大小,protobuf包内容字节即可。
他这么写,中间这个竖线让我想起来古老的用字符串组装,到底是什么意思你们可以问清楚呀。
snowolder  登堂入室 | 2019-4-27 16:30:03
落幕夜未央 发表于 2019-4-27 15:39
主命令|子命令|protobuf文件大小 这句话我也很难理解。
我们服务器如果需要定,肯定会这样给前端说:
协议 ...

人家中间竖线是分段的,不是在消息里的,他的意思跟你差不多吧 感觉楼主把protobuf当做json了
snowolder  登堂入室 | 2019-4-27 16:33:35
protobuf是要按格式他们的格式进行编码 和 解码啊, js 应该有protocolbuf 编码和解码库啊 赶紧网上找个吧
smileman  初学乍练 | 2019-4-28 11:38:23
我也感觉楼主当json处理了,二进制读写都要按照顺序,比如第一个写入的是什么,第二个写入的是什么,读取的话也要按照顺序来
sfg007  登堂入室 | 2019-4-28 13:29:05
smileman 发表于 2019-4-28 11:38
我也感觉楼主当json处理了,二进制读写都要按照顺序,比如第一个写入的是什么,第二个写入的是什么,读取的 ...

没当JSON处理,我只是写的那样表达一下
你没看我前面写的主命令 子命令吗那些    |  这个只是我打在论坛上的分隔符 不在参数里
sfg007  登堂入室 | 2019-4-28 13:31:23
snowolder 发表于 2019-4-27 16:30
人家中间竖线是分段的,不是在消息里的,他的意思跟你差不多吧 感觉楼主把protobuf当做json了 ...

对的,是这个意思,我只是分隔一下让大家看清楚些  不在消息里
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部