专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

小程序设置请求的超时时间以及处理

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/2/14 0:44:10       共计:3644 浏览

小程序设置请求的时间以及处理


   当发送请求的时候,如果请求的时间超过设置的时间就会报错,这个报错在我们request的fail中


在app.json中配置


 "networkTimeout": {

   "request": 10000,

   "connectSocket": 10000,

   "uploadFile": 10000,

   "downloadFile": 10000

 },


对request进行简单封装


   这里以字节跳动小程序为例,微信小程序也是一样的


   只需替换全局对象tt即可


export default (options) => {

  tt.showLoading({

    title: '数据加载中',

   icon: 'loading'

  });

 const token = tt.getStorageSync('token');

 return new Promise((resolve, reject) => {

   tt.request({

     url: `${baseUrl}/${options.url}`,

     method: options.method || 'get',

     header: {

       "Authorization": `bearer ${token}`

     },

     data: options.data || {},

     success: (data) => {

      resolve(data);

          tt.hideLoading();

     },

     fail: (data) => {

           // 这里可以对请求超时之后。我们可以自定义的业务逻辑,这里只是简单举例

      reject(data);

          tt.hideLoading();

          tt.showModal({

               content: "请求超时..."

               showCancel: false,

               success: (res) => {

                // 重定向会首页

                tt.redirectTo({

                       url: 'pages/home/home'

                   })

}

           })

     },

     complete: (res) => {

       tt.hideLoading();

     }

   });

 });

}



建议在我们调用接口时,使用catch进行异常捕获,其实也就是执行promise中的reject


   简单举例


getHomeList(params).then(res => {


}).catch(err => {


});

// 建议将catch写上,以便出现问题时好解决



版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:微信小程序之图片上传、多图上传、头像上传、头像获取、图片上传失败问题解决 | ·下一条:IdentityServer4实现单点登录统一认证

Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有