背景:前端通过websocket和其他设备通信,js中获取到的数据是Blob
在前端js的websocket中获取到Blob对象的数据以后
//websocket接收到数据
websocket.onmessage = function (event){
//判断是否为Blob格式的数据
if (event.data instanceof Blob) {
var blob = event.data;
//通过FileReader读取数据
var reader = new FileReader();
//以下这两种方式我都可以解析出来,因为Blob对象的数据可以按文本或二进制的格式进行读取
reader.readAsBinaryString(blob);
//reader.readAsText(blob, 'utf8');
reader.onload = function(){
var receive_data = this.result;//这个就是解析出来的数据
}
}
}
FileReader
FileReader
对象允许Web应用程序异步读取存储在用户计算机上的文件(或原始数据缓冲区)的内容,使用 File
或 Blob
对象指定要读取的文件或数据。