Monica @yhcliang:
我贴一下我的部分代码,希望对你有帮助。。我已经亲测有效!!!!
let buffer = AwesomeMessage.encode(message).finish();
let pkg: Laya.Byte = new Laya.Byte();
pkg.endian = Laya.Byte.BIG_ENDIAN; // 大端模式的数据 socket在new的时候我设置了 this.socket.endian = Laya.Socket.BIG_ENDIAN;
pkg.writeUint16(buffer.length + 2); // 我自己定义的协议,前两个字节存储整个数据的长度
pkg.writeUint16(this._protoIDs[name]); // 再两个字节存放我要发送协议映射好的id
pkg.writeArrayBuffer(buffer); //把打包好的数据附加在最后
this.socket.send(pkg.buffer); // 这里是发送的地方,记得一定要用.buffer的方式