websocket服务链接不上,求解!
我用的是GatewayWorker 集成的 websocket服务,在普通域名下使用正常。在认证域名下,怎么也链接不上。百度和微信论坛上,至今没查到有效的解决方案。请解决了此问题的各位大神指教一二,在线等。。。
域名正常:
服务正常:
我写了一个测试文件,代码如下:
结果如下:
2 回复
这个错误有可能的原因是该WebSocket对象正在发送问题,发送还没结束,然后调用者又调用了send方法接着继续发送,所以still in connecting,解决这个问题的方法是通过判断readyStatus延时发送:
this .send = function (message, callback) { this .waitForConnection( function () { ws.send(message); if ( typeof callback !== 'undefined' ) { callback(); } }, 1000); }; this .waitForConnection = function (callback, interval) { if (ws.readyState === 1) { callback(); } else { var that = this ; // optional: implement backoff for interval here setTimeout( function () { that.waitForConnection(callback, interval); }, interval); } }; |