-
Creator 版本: 3.8.4
-
目标平台: 微信小游戏开发工具中的预览,真机扫二维码运行
-
重现方式:任意websocket
-
之前哪个版本是正常的: 未知,由3.8.3版本构建的项目直接转换而来
-
手机型号: oppo
微信小游戏开发工具中的模拟器能正常接收二进制数据,但使用“预览”功能真机扫二维码运行时,websocket永远接收到的是空字符串(已确保服务器发送了二进制数据且使用已备案的wss域名)。
样例代码如下:
this.ws = new WebSocket(url);
this.ws.binaryType = “arraybuffer”;
this.ws.onopen = ev => {
};
this.ws.onmessage = ev => {
if (typeof ev.data === ‘string’) {
// 微信小程序开发者工具预览功能永远走的这里,而且是空字符串
// 处理文本消息
console.log(‘Received a text message’, ev.data);
} else {
// 处理二进制消息
let buffer = ev.data;
let view = new Uint8Array(buffer);
console.log(‘Received bytes:’, view);
// 进一步处理字节数据
}
};






