收藏
回答

wx.request请求延时

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug wx.request 客户端 6.7.3 1.9.9

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

    小程序在调用wx.request时候,实际发送请求前,微信做了什么操作?验证域名吗?使用域名一的时候,部分手机(20%左右用户)会延时30秒后才发送请求,换成域名二转发到域名一时候,这部分用户就少了很多

相关sdk出现的版本及出现的次数

相关手机型号及出现次数

微信版本及出现次数

是验证了证书吗?在安卓和ios的app里没有出现这个问题,希望知道调用wx.request到实际发送请求这之间进行了什么操作


进行了什么样的流程,方便我们排查下问题



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

3 个回答

  • a不止a
    a不止a
    2018-11-26

    找到原因了,域名一做了IPV6配置了,出现的问题

    2018-11-26
    赞同 1
    回复 1
    • 韦立勋 快马速运
      韦立勋 快马速运
      08-16
      这是怎么找出来的问题
      08-16
      回复
  • HMS
    HMS
    2018-12-29

    是只有第一次请求会这样吗?我的是只有第一次会这样。4G有问题,WIFI就没问题

    2018-12-29
    赞同
    回复 1
    • a不止a
      a不止a
      2018-12-29

      部分手机问题,应该不是第一次请求,应该是每次都出现了

      2018-12-29
      回复
  • 再见,电脑崽
    再见,电脑崽
    2018-11-26

    30秒?! 不能算是延迟了吧,尼玛我设置的超时时间才10秒。

    你尝试更换一下网络环境试一下,比如直接用手机的4G网络,并且注意下你的DNS。

    2018-11-26
    赞同
    回复 10
    • a不止a
      a不止a
      2018-11-26

      调用wx.request前计时,收到结果后计时结束,代码是这样的

      let newDate = (new Date()).getTime();

      wx.request({     url:"xxxxxx",

          success:(res)=>{

              console.log((new Date()).getTime() - newDate )

          } })


      打印的结果在30秒以上,但是network里,请求时间只有100ms,但是开始计时后,30秒左右才会实际发出请求


      2018-11-26
      回复
    • 再见,电脑崽
      再见,电脑崽
      2018-11-26回复a不止a

      console.log((new Date().getTime() - newDate)/1000) 除以1000才是秒哦!!!~

      2018-11-26
      回复
    • 再见,电脑崽
      再见,电脑崽
      2018-11-26回复a不止a

      另外你可以直接在你的network栏看到请求时间和效果。

      2018-11-26
      回复
    • a不止a
      a不止a
      2018-11-26回复再见,电脑崽

      就是除以1000后是30秒,除之前是30000以上,network里请求只有100ms左右的- -,两个域名,域名二就快很多的,但是两个域名的证书是同一个人配置的,所以目前不太清楚域名一的问题出在哪里~~

      2018-11-26
      回复
    • 再见,电脑崽
      再见,电脑崽
      2018-11-26回复a不止a

      能提供代码片段试试不?

      2018-11-26
      回复
    查看更多(5)