收藏
回答

小程序wx.request方法,不走回调函数

框架类型 问题类型 操作系统 工具版本
小程序 Bug Windows 1.02.1904090

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

- 前提:

  1. 小程序的启动页在加载成功后至少三个以上的接口调用wx.request方法;

  2. 不要勾选开发者工具中的不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书项,因为勾选这个就不会出现下面的问题了;

  3. 注意我的域名都是有https证书的并且在小程序后台也已经配置了,并且在我不勾选这一项的时候,只要不像下面描述的那样操作,我的小程序也是可以正常走回调的函数的,所以请不要判断为是证书的问题。

  4. 微信版本7.0.3;开发者工具中选择的调试基础库版本2.6.4

- 复现步骤

在开发者工具中修改代码(所谓的修改代码,就是你只要在代码中空白处回车或者空格即可)并保存,开发者工具自动编译小程序,在小程序正在编译的时候,再去修改代码并保存;这样的动作快速重复执行十次左右,等待小程序编译成功,启动页完全展示,就会出现wx.request方法不走回调函数,所谓的不走回调函数是指:不走下面的success或者fail或者complete方法

let con = {
 
       method: request.method,
 
       url: request.url,
 
       dataType: request.dataType || undefined,
 
       header: request.headers,
 
       data: request.body || {},
 
       responseType: request.responseType || 'text',
 
       success: function (res) {
 
           responseCallback({
 
               statusCode: res.statusCode,
 
               responseText: res.data,
 
               headers: res.header,
 
               statusMessage: res.errMsg
 
           });
 
       },
 
       fail: function (res) {
 
           responseCallback({
 
               statusCode: res.statusCode || 0,
 
               statusMessage: res.errMsg
 
           });
 
       },
 
      complete: function (){
 
          console.log('===complete===')
 
      }
 
   };
 
   wx.request(con);

- 预期表现

希望即使在这种情况下,小程序的wx.request方法也应该走回调函数

- 复现路径


- 提供一个最简复现 Demo


最后一次编辑于  2019-04-23
回答关注问题邀请回答
收藏

2 个回答

  • 梦尋 # Junjie 🍂
    梦尋 # Junjie 🍂
    2023-09-27


    请不要 随意指定 responseType 的值 , 如果不等于 text,arraybuffer 那么微信不会执行任何的回调函数, 完成,失败 都不会执行, 别问为什么我知道


    2023-09-27
    有用
    回复
  • 疯狂的小辣椒
    疯狂的小辣椒
    2019-04-23

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

    2019-04-23
    有用
    回复
登录 后发表内容