import config from './config'; var gbConfig = { appid: 'wx43759fe438b7b066' }; /*获取当前页带参数的url*/ function getCurrentPageUrlWithArgs(){ var pages = getCurrentPages() //获取加载的页面 var currentPage = pages[pages.length-1] //获取当前页面的对象 var url = currentPage.route //当前页面url var options = currentPage.options //如果要获取url中所带的参数可以查看options //拼接url的参数 var urlWithArgs = url + '?' for(var key in options){ var value = options[key] urlWithArgs += key + '=' + value + '&' } urlWithArgs = urlWithArgs.substring(0, urlWithArgs.length-1) return encodeURIComponent(urlWithArgs) }; export const sandBox = { get({api, data, header}){ let extConfig = {}; if (extConfig.appid) { gbConfig = extConfig } if (header) { header.appid = gbConfig.appid } else { header = {}; header.appid = gbConfig.appid } return new Promise((resolve, reject) => { wx.request({ url:`${config.GLOBAL.baseUrl}${api}`, header:header, data:data, method:'GET', success:res => { sandBox.error(res).then(()=>{ resolve(res) }) }, fail:rej => { reject(rej) } }) }) }, post({api, data, header}){ let extConfig = ''; if (extConfig.appid) { gbConfig = extConfig } if (header) { header.appid = gbConfig.appid } else { header = {}; header.appid = gbConfig.appid } return new Promise((resolve, reject) => { wx.request({ url:`${config.GLOBAL.baseUrl}${api}`, data:data, header:header, method:'POST', success:res => { sandBox.error(res).then(()=>{ resolve(res) }) }, fail:rej => { reject(rej) } }) }) }, error(res){ return new Promise((resolve,reject)=>{ var url = getCurrentPageUrlWithArgs(); if (res.data.message == 'Unauthenticated.') { uni.removeStorageSync('user_token'); wx.showModal({ content:'请重新登录', duration:1500, showCancel: false, success:(res)=>{ if (res.confirm) { wx.navigateTo({ url:`/pages/user/register/register?url=${url}` }) return; } }, cancel:()=>{ wx.navigateTo({ url:`/pages/user/register/register?url=${url}` }) return; } }) reject() return } resolve(); return }) }, ajax({api, data, method, header}) { let extConfig = ''; if (extConfig.appid) { gbConfig = extConfig } if (header) { header.appid = gbConfig.appid } else { header = {}; header.appid = gbConfig.appid } return new Promise((resolve,reject) => { wx.request({ url:`${config.GLOBAL.baseUrl}${api}`, data, header, method:method.toUpperCase(), success:res => { sandBox.error(res).then(()=>{ resolve(res) }) }, fail:rej => { reject(rej) } }) }) }, uploadFile({api,filePath,header,name}){ let extConfig = ''; if (extConfig.appid) { gbConfig = extConfig } if (header) { header.appid = gbConfig.appid } else { header = {}; header.appid = gbConfig.appid } return new Promise((resolve,reject) =>{ wx.uploadFile({ url:`${config.GLOBAL.baseUrl}${api}`, header, filePath, name, success:res => { resolve(res) }, fail:rej => { reject(rej) } }) }) }, dowloadFile({api, filePath, header, name}) { let extConfig = ''; if (extConfig.appid) { gbConfig = extConfig } if (header) { header.appid = gbConfig.appid } else { header = {}; header.appid = gbConfig.appid } return new Promise((resolve, reject) => { wx.downloadFile({ url:api, header, filePath, name, success:res => { resolve(res) }, fail:rej => { reject(rej) } }) }) } };