import request from './request.js' // 文档地址：https://github.com/jerry-9527/uni_request
import config from '@/config/config.js'
// import store from '@/store'
import cache from '@/utils/cache'
import {
	LOGIN_TOKEN
} from '@/config/cache'

// 创建request实例
const service = request({
	baseURL: config.baseUrl,
	timeout: 5000, // 请求超时,
	header: {
		'Content-Type': 'application/x-www-form-urlencoded',
		'Accept': 'application/json'
	}
});

// 请求拦截器
service.interceptors.request.use(async (config, ...args) => {

	// 判断token是否存在
	let token = cache.get(LOGIN_TOKEN) || '';
	// token为空已过期 刷新token
	if (token) {
		config.body.token = token;
	}
	return config
})


// response interceptor
service.interceptors.response.use((response, ...args) => { // 响应拦截器（可以设置多个, 同时可以也可以使用异步方法）
	if (response.data.message) {
		uni.showToast({
			title: response.data.message,
			duration: 1500,
			mask: true,
			icon: 'none'
		});
	}
	return response
})
export default service


// export const myRequest = (options) => {
// 	let BASE_URL = 请求地址
// 	console.log(BASE_URL)
// 	var session_key = ""
// 	session_key = uni.getStorageSync('session_key')
// 	let url = ""
// 	let data = options.data || {}
// 	if (options.url.split('=')[1]) {
// 		url = options.url.split('=')[1]
// 	} else {
// 		url = options.url.split('api/')[1]
// 	}
// 	console.log(url)
// 	if (url != 'user.login.login_user') {
// 		data.token = session_key
// 	}

// 	return new Promise((resolve, reject) => {
// 		uni.request({
// 			url: BASE_URL + options.url,
// 			method: options.method || 'POST',
// 			header: {
// 				"Content-Type": "application/x-www-form-urlencoded",
// 			},
// 			data: data,
// 			success: (res) => {
// 				if (res.data.message != "") {
// 					if (res.data.message == "识别无结果") {
// 						resolve(res.data.data)
// 					} else {
// 						return uni.showToast({
// 							title: res.data.message,
// 							icon: "none"
// 						})
// 					}
// 				}
// 				resolve(res.data.data)
// 			},
// 			fail: (err) => {
// 				uni.showToast({
// 					title: '请求接口失败'
// 				})
// 				reject(err)
// 			}
// 		})
// 	})
// }
