|                                                                                                                                   |  | 
import Vue from 'vue'import utils from '../utils/utils.js'
function http(uri, data, callback, method = 'GET', showLoading, title) {		if(showLoading){		uni.showLoading({		    title: title || '加载中...'		});	}		uni.request({		url: Vue.prototype.$config.baseUrl + uri,		data: enhanceData(data),		method: method,		header: {			'X-Access-Token': uni.getStorageSync('token'),			'Content-Type' : method == 'POST' ? 'application/x-www-form-urlencoded' : 'application/json'		},		success: (res) => {						if(showLoading){				uni.hideLoading();			}						if(res.statusCode == 401 || 			res.data.message == '操作失败,token非法无效!' || 			res.data.message == '操作失败,用户不存在!'){				uni.removeStorageSync('token')				console.error('登录过期');				utils.toLogin()			}						if(res.statusCode == 200 && res.data.code != 200){				uni.showToast({					mask: true,					duration: 1000,					title: res.data.message,					icon:'none'				});			}						callback(res.data)		},				fail: () => {			uni.showLoading({})			setTimeout(()=>{				uni.hideLoading()				uni.showToast({icon:"none", title:"网络异常"})			}, 3000)						if(showLoading){				uni.hideLoading();			}		}	});}
function deleted(uri, data, callback) {	http(uri, data, callback, 'DELETE')}
function post(uri, data, callback) {	http(uri, data, callback, 'POST')}
function get(uri, data, callback) {	http(uri, data, callback, 'GET')}
function enhanceData(data) {	const userid = uni.getStorageSync("userid")	if (!data) {		data = {}	}	if (userid) {		data.userid = userid	}	return data}
function sync(method, uri, data) {	return new Promise((resolve, reject) => {		uni.request({			url: uri,			data: data,			method: method,			header: {				'auth': '1AS9F1HPC4FBC9EN00J7KX2L5RJ99XHZ'			},			success: (res) => {				resolve(res.data)			},			fail: (err) => {				reject(err);			}		})	})}
let cache = null
function async (method, uri, data) {	const promise = sync(method, uri, data).then(res => {		cache = res	}).catch(err => {
	})}
function syncHttp(uri, data, method = 'GET') {	async (method, uri, data)}
export default {	http: http,	delete: deleted,	post: post,	get: get,	syncHttp: syncHttp}
 |