收藏
回答

websocket长时间无法连接服务器

框架类型 问题类型 操作系统版本 手机型号 微信版本
小程序 Bug andoird,ios 不限型号 7.0

- 当前 Bug 的表现(可附上截图)

websocket长时间无法连接服务器


很简单的代码


socket = wx.connectSocket

socket.onOpen

sockst.send

...


偶尔会出现长时间无法连接的情况,然后不断尝试重连,大概需要1分钟左右才能成功连接。

如这时候重启微信再进入就能连接成功。


安卓、ios机型都有遇到这个问题


另外发现,这种情况在wifi下多人同时连接同一个wss服务器时会碰到比较多。而切换到4G网络下很少碰到。


错误信息:WebSocket connection to 'wss://................' failed: WebSocket is closed before the connection is established.

(因为有个超时检查,几秒钟后连接不上就socket.close())


发生问题时,通过抓包未发现有网络异常。



- 预期表现


能正常快速建立连接


- 复现路径


首次打开小程序很少碰到这种情况,但是回到微信聊天从分享卡片再次进入小程序后碰到概率很大。



- 提供一个最简复现 Demo




在提问前搜索了一下相关帖子,发现"7.0下websocket连接问题"反馈比较多,不知道我这种情况是否也是微信7.0的问题导致?


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

1 个回答

  • 灵芝
    灵芝
    2019-01-23

    麻烦提供能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    并上传日志:我->设置->帮助与反馈右上角有个上报日志的入口,上传成功后提供一下微信号,出现问题的时间(具体到分钟)

    2019-01-23
    有用 1
    回复 2
    • 2019-01-25

      非常抱歉。


      通过仔细排查,发现是websocket服务器网络设置问题


      调整网络参数后问题已解决

      net.ipv4.tcp_tw_recycle = 0

      net.ipv4.tcp_timestamps = 0

      2019-01-25
      1
      回复
    • 灵芝
      灵芝
      2019-01-25回复

      好的,解决就好

      2019-01-25
      回复
登录 后发表内容