服务端传输数据不是JSON而是二进制的话,JS脚本怎么去解析,如果C++的话memcpy就搞定了,JS貌似没有办法,这个怎么解决,还是说二进制这种形式不适合做websock?
arrayBuffer
感谢回答,有详细的转换示例吗
//封包
var sbuff = new ArrayBuffer(12);// 12字节长buff
var a = new Int32Array(sbuff, 0, 1);// 从buff的0字节开始,创建有1个Int32元素的数组,即用掉4字节
a[0] = 11;// 第0-3个字节赋值为11
var b = new Float32Array(sbuff, 4, 2);// 从buff的4字节开始,创建有2个float元素数组,即用掉8字节
b[0] = 21;// 第4-7个字节赋值为21
b[1] = 22;// 第8-11个字节赋值为22
// 解包
var rbuff = sbuff;
var a = new Int32Array(rbuff, 0, 1);
var b = new Float32Array(rbuff, 4, 2);
console.log(a[0], b[0], b[1]);// 11 21 22
如图:

试试用 protobuf 如何
arraybuffer正解.
搞定了,谢谢大神