webSocket发送二进制,服务端抓包的数据和我发的不一样

  • Creator 版本:2.3.1
  • 目标平台:
    web
  • 详细报错信息,包含调用堆栈:
  • 重现方式:
    每次都不一样
  • 之前哪个版本是正常的 :
  • 手机型号 :
  • 手机浏览器 :
  • 编辑器操作系统 :
    Windows
  • 编辑器之前是否有其它报错 :
  • 出现概率:100%

  • 额外线索:
    这是抓包数据

这是我发送的数据

代码:
创建websocket连接

把数据转换成了二进制

然后发送

现在是服务器只能通过抓包看到我的数据,他却解析不到,有没有大佬指点一下,是我这边发的有问题吗,还需要做什么才能正常呢?

我只能根据经验说 抓包没意义,有问题的话 怎么抓出来看 都是错的反正,
我估计 最大的问题 是服务器 接受数据 丢包了 ,逻辑层出问题的几率很大 十有八九是你逻辑层有错误造成的 ,
因为 你不用怀疑操作系统的问题,基本就是你自己的问题
如果你硬要怀疑是系统问题,那么你这样试试 换个COCOS 版本先,比如2.0.10 这个版本比较经典了 问题不大应该,然后服务器端 不要用代理 等,不要加SSL等 限制,总之 你要先找到一个正确的环境 然后再往你现有的环境下 去靠,才能发现问题

改为true试试 看是不是字节序的问题
或者先发一串字符串试试,看发在哪里,是不是反了之类的

检查下版本是不是匹配

客户端和服务端大小端匹配么

服务端用大端的

匹配的

代码都在这里了,没有做任何其他操作了,字节都是一个一个写进去了。而且我用websocket在线测试,都是可以返回我发送的数据的

如果用websocket在线测试 是正常的 ,可以判断你的服务器是没问题的 ,那么就是你客户端的问题了,换个CREATOR版本试试吧 ,找个经典版本测试先,这东西 没人有一下子能定位到错误在哪里 你只能试

我没看你的代码,但你的测试数据 太多了 ,简化测试数据,发送 一个字节先 这种方式测试 ,不要一下子发那么多东西

是客户端给在线测试的websocket服务器发送数据,然后客户端能接收到:joy:

直接先发文本信息测试,例如明文json,如果收到和发出一样,那么就是二进制收发加密、包大小端等的问题。
如果不一致,那么就是客户端或服务端本身就有问题。

json是和发出的是一样的,可以正常显示。可是二进制我没有做过加密发送呀

楼主解决了吗

大小端 是 数据格式,但是两边数据应该一样的。