微信小游戏Websocket超出限制的问题

  • Creator 版本: 2.4.x

  • 目标平台: 微信小游戏

报错提示
VM1350 asdebug.js:10 同时最多发起 5 个 socket 请求,更多请参考文档:https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html(env: Windows,mg,1.06.2209070; lib: 2.30.2)

使用:

this._socket = new WebSocket(url);

//每次连接之前都会判断并调用 close, 多次连接后,必现微信报错!

this._socket.close();

在new这句后面加个输出,看看为什么一直new
正常的WebSocket网络模块应该是握手之后就保存_socket实例,只要没断线就一直用这个发,不需要每次都连接。

request(req: IRequest) {
  if (this.ws && this.ws.readyState == WebSocket.OPEN) {
    let str = JSON.stringify(req);
    this.ws.send(str);
  } else {
    this.requestQueue.push(req);
  }
}

这也是个办法!!但是我每次登录需要连接二个不同的 websocket,所以每次都是close之后,把对象置为null的!我感觉还是微信内部的bug, close 后没有释放立即链接. 导致我不能立即去链接, 过几分钟后,还是可以链接成功的