首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >小程序websocket推送消息Uint8Array/ArrayBuffer

小程序websocket推送消息Uint8Array/ArrayBuffer

作者头像
用户7741497
发布2022-03-21 13:37:31
发布2022-03-21 13:37:31
78700
代码可运行
举报
文章被收录于专栏:hml_知识记录hml_知识记录
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
复制
// 小程序中sendSocketMessage是支持ArrayBuffer的,我这个错误原因在于new Uint8Array不是ArrayBuffer,而是他的一个属性值才是arrayBuffer
var init8arr = new Uint8Array([1,0,2,0,1]);
wx.sendSocketMessage({
    data: init8arr.buffer,
    success:function(e){
         console.log(e)
    },
    fail:function(e){
         console.log(e)
    },
    complete:function(e){
         console.log(e)
    }
});

另外还一个问题就是真机小程序中不支持 new TextDecoder()对象,函数,解决办法:

代码语言:javascript
代码运行次数:0
运行
复制
function decodeUTF8(arr) {
    var str = '';
    for (var i = 0; i < arr.length; i++) {
        str += String.fromCharCode(arr[i]);
    }
    return decodeURIComponent(escape(str));
}

console.log(decodeUTF8([230, 177, 137, 229, 173, 151]));

以上两个问题都是微信开发者工具与真机环境不一致的锅。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档