let buff:ArrayBuffer = Login.encode(_login);
let arrayBuff : ArrayBuffer = new ArrayBuffer(8+buff.byteLength);
var view = new DataView(arrayBuff);
view.setInt16(0,6+buff.byteLength);
view.setInt16(2,1);
view.setInt16(4,0);
view.setInt16(6,0);
上面是拼接一个消息体的头部,buff是消息体的实体对象,我怎么把buff拼到arrayBuff偏移8位之后的位置呢~~~。请教一下。
需要设置它的byteOffset啊!
还是直接用bytebuffer库吧,
自己实现也可以参考它的源码
-
https://github.com/protobufjs/bytebuffer.js
如果需要支持64位的话,还需要Long库 - https://github.com/dcodeIO/long.js