diff --git a/utils/request.js b/utils/request.js index a6d428b..4e3146d 100644 --- a/utils/request.js +++ b/utils/request.js @@ -63,7 +63,7 @@ const defaultOpt = {login: true}; function baseRequest(options) { // 从缓存中获取 token 防止 token 失效后还会继续请求的情况 - const token = cookie.get('login_status'); + const token = cookie.get('login_status') // 合并传参过来的 headers // 如果接口需要登录,携带 token 去请求 @@ -85,28 +85,39 @@ function baseRequest(options) { // 发起请求 return http[options.method](url, _params).then(res => { - const resData = res.data || {}; + const resData = res.data || {} // AI对话某个请求返回为空需要处理这种情况 if (['get', 'GET'].includes(options.method) && _params.params.isNoNeedPublicErrorNotification === 1) { console.log('----') if (resData.status === 500) { - return Promise.reject({msg: resData.msg, res, data}); + return Promise.reject({msg: resData.msg, res, data}) } else { return Promise.resolve({}) } } if (res.statusCode !== 200) { - return Promise.reject({msg: "请求失败", res, resData}); + return Promise.reject({msg: "请求失败", res, resData}) } if (resData.status === 401) { - handleLoginFailure(); - return Promise.reject({msg: '未登录', res, resData, toLogin: true}); + const whiteApiList = ['guide/status'] + let flag = false + whiteApiList.map(item => { + if (options.url.indexOf(item) > -1) { + flag = true + } + }) + if (flag) { + return Promise.resolve(resData, res) + } else { + handleLoginFailure(); + return Promise.reject({msg: '未登录', res, resData, toLogin: true}) + } } if ([ 403].indexOf(resData.status) !== -1) { handleLoginFailure(); - return Promise.reject({msg: res.data.msg, res, resData, toLogin: true}); + return Promise.reject({msg: res.data.msg, res, resData, toLogin: true}) } else if (resData.status === 200) { - return Promise.resolve(resData, res); + return Promise.resolve(resData, res) } else { // 埋点数据推送、获取店铺分享图片 if (url.indexOf('api/systemStats/push') < 0 && url.indexOf('api/hotelMain/shareImage') < 0) { @@ -118,9 +129,9 @@ function baseRequest(options) { } }) } - return Promise.reject({msg: resData.msg, res, data}); + return Promise.reject({msg: resData.msg, res, data}) } - }); + }) } /**