var Fly = require("./wx.umd.min") var fly = new Fly fly.config.loading = true; //实例级配置 //fly.config.timeout=6000; //添加拦截器 fly.interceptors.request.use((config, promise) => { console.info(fly.config.loading) if (fly.config.loading) { uni.showLoading({ title: '加载中' }); } //给所有请求添加自定义header //let token = getApp().globalData.token const token = uni.getStorageSync('token'); const userinfo = uni.getStorageSync('userinfo'); if (token) { config.headers["X-Access-Token"] = token; if(userinfo) config.headers["X-Tenant-Id"] = userinfo.loginTenantId; } console.log('========================================== ') console.log('== 请求数据:' + JSON.stringify(config)) console.log('=========================================== ') return config; }) //添加响应拦截器,响应拦截器会在then/catch处理之前执行 fly.interceptors.response.use( (response) => { console.log('========================================') console.log('== 响应数据:' + JSON.stringify(response.request.url)) console.log('== ' + JSON.stringify(response.data)) console.log('======================================== ') //只将请求结果的data字段返回 //TODO 处理没有token // jumpToLogin(); uni.hideLoading() return response.data }, (err) => { console.info(err) uni.hideLoading() //登录超时,重新登录 if (err.response && err.response.status == 401) { uni.showToast({ title: "登录状态已失效,重新登录!", icon: 'none', mask: true, complete: function (res) { setTimeout(()=>{ jumpToLogin(); },1000) }, }); } //发生网络错误后会走到这里 //return Promise.resolve("ssss") } ) //跳转到登录页 function jumpToLogin() { console.log('关闭所有页面跳转到login') uni.reLaunch({ url: '/pages/login/login' }); } module.exports = { fly }