环境:
Creator:
1.6.1(mac和win都有这个问题)
平台:
android,iOS (web没问题,模拟器没测)
出现概率:
毕现
使用常规的websocket连接,send时,body末尾的空字符(\x00)在原生环境下会被截掉。
代码大致有这些:
//调试代码输出body长度和最后一个字符的asscii int值
this.debug(">>> len: " + out.length);
this.debug(">>> last: " + out.charCodeAt(out.length - 1));
在web浏览器上是正常的,可以有类似的输出(后端收到的数据正常):
>>> len: 134
>>> last: 0
在原生环境下末尾的 \x00 会被截掉,android日志截图如下
可以看到js代码里打印的length比Websocket-libwebsockets.cpp打印的length大1,服务器端收到的数据也确实是少了一个字节的。