JS操作websocket接收的二进制,安全性能有保障,已经过一年实践考验:
- ws.onmessage = function(evt) {
- if(typeof(evt.data)=="string"){
- textHandler(JSON.parse(evt.data));
- }else{
- var reader = new FileReader();
- reader.onload = function(evt){
- if(evt.target.readyState == FileReader.DONE){
- var data = new Uint8Array(evt.target.result);
- handler(data);
- }
- }
- reader.readAsArrayBuffer(evt.data);
- }
- };
- function handler(data){
- switch(data[0]){
- case 1:
- getCard(data[1]);
- break;
- ...
JS操作websocket接收的图片,今天刚写的,也是用filereader实现。
- ws.onmessage = function(evt) {
- if(typeof(evt.data)=="string"){
- //textHandler(JSON.parse(evt.data));
- }else{
- var reader = new FileReader();
- reader.onload = function(evt){
- if(evt.target.readyState == FileReader.DONE){
- var url = evt.target.result;
- alert(url);
- var img = document.getElementById("imgDiv");
- img.innerHTML = "<img src = "+url+" />";
- }
- }
- reader.readAsDataURL(evt.data);
- }
- };