收藏
回答

websocket服务链接不上,求解!

框架类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 websocket 工具 6.6.5 190

我用的是GatewayWorker 集成的 websocket服务,在普通域名下使用正常。在认证域名下,怎么也链接不上。百度和微信论坛上,至今没查到有效的解决方案。请解决了此问题的各位大神指教一二,在线等。。。


域名正常:


服务正常:

我写了一个测试文件,代码如下:



结果如下:





回答关注问题邀请回答
收藏

2 个回答

  • Chasen
    Chasen
    2018-03-05

    这个错误有可能的原因是该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); 
        
    };


    2018-03-05
    有用
    回复
  • 檀哥
    檀哥
    2018-03-05

    老天,真的没人吗?

    2018-03-05
    有用
    回复
登录 后发表内容