问题描述
- websocket的ws.rQshiftStr方法怎么用 最好是付个简短源代码
-
麻烦大神 给我写下实例源代码,本人小白着实不会。
ws.onmessage = function (e){
document.getElementById('img').src = 'data:image/jpg;base64,' + e.data;
}e:这里原来是base64数据 现在这么接收二进制
解决方案
原来那个帖子是居于https://github.com/kanaka/websockify这个框架的。。原生的websoket没有rQshiftStr这个方法。。
e.data是直接2进制流了,使用btoa方法转为base64试试
ws.onmessage = function (e){
document.getElementById('img').src = 'data:image/jpg;base64,' + btoa(e.data);
}
解决方案二:
试试这个。
ws.onmessage = function(evt) {
if(typeof(evt.data)=="string"){
//.....
}else{
var reader = new FileReader();
reader.onload = function(evt){
if(evt.target.readyState == FileReader.DONE){
var data = new Uint8Array(evt.target.result);
document.getElementById('img').src = 'data:image/jpg;' + data;
}
}
reader.readAsArrayBuffer(evt.data);
}
};
解决方案三:
ws无法接接接收字节流的,上面用的FileReader是不行地。。
时间: 2024-11-05 12:31:56