天天看点

将blob对象转二进制buffer

一直做了一个websocket的项目,,接的是第三方接口,第三方接口有一个node案例,案例中,通过websocket返回的数据是直接是buffer对象,然后通过第三方库pako,进行解压。

      但是在客户端,返回的数据是blob二进制数据,那么怎么将它向客户端进行解压呢?

     最后通过 renderer 对象成功解决:

var render = new FileReader();

render.onloadend = function () {

    var ms = pako.inflate(render.result, {

        to: 'string'

    });

    var msg = JSON.parse(ms);

    if (msg.ping) {

        that.websocket.send(JSON.stringify({

            pong: msg.ping

        }));

    } else if (msg.tick) {

        var attr = msg.ch.split(".")[1];

        document.querySelector("." + that.name + attr).innerHTML = parseFloat(msg.tick.close);

    }

};

render.readAsBinaryString(e.data);