diff --git a/api/request.js b/api/request.js index 2dc05ea..b01acec 100644 --- a/api/request.js +++ b/api/request.js @@ -1,7 +1,5 @@ -import config from '~/config'; - const baseUrl = 'https://ddbs.1024tool.vip/'; -const delay = config.isMock ? 500 : 0; +let isNavigatingToLogin = false; function request(url, method = 'GET', data = {}) { const header = { 'content-type': 'application/json', @@ -20,33 +18,38 @@ function request(url, method = 'GET', data = {}) { dataType: 'json', // 微信官方文档中介绍会对数据进行一次JSON.parse header, success(res) { - console.log(res) - setTimeout(() => { - - if(res.data.code && res.data.code == 10103){ + if (res.data.code) { + if (res.data.code == 10103) { wx.removeStorageSync('access_token'); - wx.switchTab({ - url: '/pages/my/index', - }) + if (!isNavigatingToLogin) { + const pages = getCurrentPages(); + const currentRoute = pages[pages.length - 1]?.route; + if (currentRoute !== 'pages/login/login') { + isNavigatingToLogin = true; + wx.navigateTo({ + url: '/pages/login/login', + complete: () => { + isNavigatingToLogin = false; + } + }); + } + } reject(res.data); - } else { - console.log(res.data) - resolve(res.data); } - - }, delay); + reject(res.data); + } else { + resolve(res.data); + } + }, fail(err) { - setTimeout(() => { - console.log(err) - // 断网、服务器挂了都会fail回调,直接reject即可 - - reject(err); - }, delay); + console.log(err) + // 断网、服务器挂了都会fail回调,直接reject即可 + reject(err); }, }); }); } // 导出请求和服务地址 -export default request; +export default request; \ No newline at end of file diff --git a/pages/login/login.wxml b/pages/login/login.wxml index e371a4a..b79b27d 100644 --- a/pages/login/login.wxml +++ b/pages/login/login.wxml @@ -2,7 +2,7 @@ - +