import config from '@/config/request' let HTTP_COUNT = 0 // loading次数 const request = options => { HTTP_COUNT++ if (config.showLoading) { // 请求数据时的loading uni.showToast({ title: '加载中', duration: 200, icon: 'loading' }) } const header = Object.assign({}, config.headers, { // token: uni.getStorageSync('token') token: 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyIiwiaWF0IjoxNjU0MTYzMjI2LCJleHAiOjE2NTQyMDY0MjYsImFjY291bnRJZCI6IjQ1MiJ9.oqupeDUjOWMKjdj7p7TclcfnPbsZfqwra5QKxo2YqvU' }) return new Promise((resolve, reject)=>{ const { url } = options uni.request({ header, url: ((url.includes('weChatAppletCallback') || url.includes('userBinding')) ? 'http://192.168.31.137:9000/' : config.baseURL) + url, method: options.method || 'GET', // 请求类型,默认为GET data: options.data || {}, // 请求参数,默认空对象 success: ({ data }) => { // 状态判断,根据后台定义并提示 if (data.status === 200) { resolve(data) } else { uni.showToast({ title: data.message, icon: 'none' }) reject(data) } }, fail: err => { uni.showToast({ title: '请求失败!', icon: 'none' }) reject(err) }, complete: () => { if (config.showLoading) { HTTP_COUNT-- HTTP_COUNT || uni.hideLoading() } } }) }) } const get = (url, data, options = {}) => { options.method = 'GET' options.data = data options.url = url return request(options) } const post = (url, data, options = {}) => { options.method = 'POST' options.data = data options.url = url return request(options) } export default { request, get, post }