收藏
回答

小程序中能否使用FileReader把blob对象中的数据读取出来

问题模块 API/组件名称 终端类型 微信版本 基础库版本
API和组件 FileReader 客户端 6.6.1 1

在网络通信中,有时需要读取服务器发来的二进制数据,

本人的项目中,使用websocket,得到的这些二进制数据会被当作blob类型(在websocket的信息头中定义了数据类型为 0x2)


通常我们是可以把blob类型转化成别的类型的,但是都需要FileReader这个东西。比如

var reader = new FileReader();

var self = this;

reader.onload = function (e) {self.onTraitMsg(reader.result);}

reader.readAsArrayBuffer(msg);


我在网上找了一阵子,有的人说微信小程序提供这个接口,有的人说不提供。

请问到底提不提供,如果不提供,有没有替代的方法?



最后一次编辑于  2018-01-10
回答关注问题邀请回答
收藏

3 个回答

  • 小程序技术专员-LastLeaf
    小程序技术专员-LastLeaf
    2018-01-12

    应该是目前只实现了String/ArrayBuffer类型的处理。详情请参考文档。

    2018-01-12
    赞同
    回复
  • 小程序技术专员-LastLeaf
    小程序技术专员-LastLeaf
    2018-01-10

    小程序没有 File API 。onSocketMessage 可以是 ArrayBuffer ,你可以从这个角度做。

    2018-01-10
    赞同
    回复
  • AieyLisyh
    AieyLisyh
    2018-01-12

    LastLeaf 谢谢,之前是按普通的浏览器的websocket写的,没有注意到api的区别。

    是不是只要换成微信的websocket的api,接收到的就一定是String或者ArrayBuffer类型的?

    2018-01-12
    赞同
    回复
登录 后发表内容