收藏
回答

websocket服务链接不上,求解!

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

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


域名正常:


服务正常:

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



结果如下:





最后一次编辑于  2018-03-05  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

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
    赞同
    回复
  • FreeBird
    FreeBird
    2018-03-05

    老天,真的没人吗?

    2018-03-05
    赞同
    回复