js websocket 前端接到发来的每包数据后通知后台

比如说后台发来一个 hello world,我接收到了就回个ok,
同理我每接收到后台传来的一条数据就给后台发送一个通知

if(typeof(WebSocket) === "undefined"){
    alert("您的浏览器不支持socket")
}else{
    // 实例化socket
    socket = new WebSocket('ws:url')
    // 监听socket连接
    socket.onopen = function(){
        console.log("socket连接成功")
        // socket.send('ok')
    }
    // 监听socket错误信息
    socket.onerror = function(){
        console.log("连接错误")
    }
    // 监听socket消息
    socket.onmessage = function(msg){
        // console.log(msg)
        var canvas2 = document.getElementById("mycanvas");
        var ctx2 = canvas2.getContext("2d");
        var img2 = new Image();
        img2.src = 'data:image/jpg;base64,'+msg.data;
        img2.onload = function(){
                ctx2.drawImage(img2, 0, 0,640,360);
                   
        };
    }
    socket.close = function(){
        console.log("socket已经关闭")
    }
}
阅读 3k
2 个回答

onmessage 回调里调用 socket.send(something).

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题