tinywan

websocket

一、需要注意的是,js建立连接处完整的js代码要执行完成退出后才会真正发起建立连接请求,如果在此之前发送消息则会报错如下:

InvalidStateError: An attempt was made to use an object that is not, or is no longer, usable

解决办法:在websocket已经和Workerman链接的时候再发送消息,而不是在建立链接之前去发送消息

 websocket.onopen = function (evt) 
{ bindUid(websocket); };
 var data = {
       \'type\': \'4001\',
       \'user_id\': response.user_id
}
websocket.send(JSON.stringify(data)); //这里给Workerman发送信息的时候一定要转换成字符串,不然那边识别了

二、Workerman那边广播消息的时候返回的是一个Json字符串,所以在HTML代码中可以通过把字符串转换成对象来获取值比较容易点:

function onMessage(evt)
    {
        var $json_obj = JSON.parse(evt.data); //由JSON字符串转换为JSON对象
        if ($json_obj.error_code == 200) {
            alert($json_obj.message);
        }
        console.log($json_obj);
    }

 

分类:

技术点:

相关文章:

  • 2021-12-10
  • 2022-01-01
  • 2021-12-20
  • 2021-12-18
  • 2021-09-11
  • 2021-10-11
  • 2021-11-30
  • 2021-08-13
猜你喜欢
  • 2021-07-18
  • 2021-08-24
  • 2021-11-30
  • 2021-11-15
  • 2022-01-13
  • 2021-08-01
相关资源
相似解决方案