// 导出request函数
// 函数里面返回promise实例
// 形参
import { getToken} from "./auth";
import { baseUrl,uploadUrl } from "./apiconfig";

export const request = (config) => {
	console.log('token', getToken())
	// 解构
	const {
		method = 'GET',url = '',  data = {}, header = {}
	} = config
	// 请求拦截器
	uni.showLoading({
		title: '加载中'
	});
	// 返回
	return new Promise((resolve, reject) => {
		uni.request({
			// 行
			method,
			url: baseUrl + url,
			// 头
			header: {
				'content-type': 'application/x-www-form-urlencoded',
				'authorization': getToken(),
				...header
			},
			// 体
			data,
			// 结果
			success: (res) => {
				// 响应拦截器 - 成功
				resolve(res.data)
			},
			fail: (err) => {
				// 响应拦截器 - 失败
				uni.showToast({
					title: '请求失败，请刷新重试',
					icon: 'none'
				});
				reject(err)
			},
			complete: () => {
				uni.hideLoading();
			}
		})
	})
	// ...
}