Websocket————错误总结
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); }