//测试地址
//const baseUrl = 'http://192.168.1.25:20187/'
const baseUrl = 'http://dms.66km.com.cn/'
//正式
//const baseUrl = 'https://apidms.66km.com/'

console.log(baseUrl)
const http = (url = '', date = {}, type = 'POST', header = {
}) => {
    return new Promise((resolve, reject) => {
		header={};
		//console.log(baseUrl)
		//const wxOpenData = uni.getStorageSync("wxOpenData");
		var imAccessToken= uni.getStorageSync("imAccessToken")
		var token= uni.getStorageSync("token")
		//token='431A242A-0694-4D6F-9657-C31AD25E7D15'
		if(token){
			header['token']=token;
			//header['uid']=wxOpenData.loginInfo.uid; 
		} 
		//console.log($store.state.carInfo)
		//header['token']='98A9FED8814B457288166BDF623F33D1';
		//header['uid']='39415962-C9D3-466D-A73F-5B5429A8DB2A'; 
		header['Content-Type']='application/x-www-form-urlencoded';
		//console.log(header)
        uni.request({
            method: type,
            url: baseUrl + url,
            data: date,
            header: header,
            dataType: 'json',         
        }).then((response) => {
          
            let [error, res] = response;
		 
			if(res.data.code==401||res.data.code==403){
				//  uni.showToast({
				//      title: res.data.msg,
				//  	 icon:'none',
				//      duration: 3000,
				//  });
				// uni.clearStorageSync()
				//  uni.navigateTo({
				// 	url:'../login/login'
				// }) 
			}else if(res.data.code==409){
				 // getToken(url,date,type,header)
			}
			if(res.data.code==1){
				  uni.showToast({
				      title: res.data.msg,
				  	 icon:'none',
				      duration: 4000,
				  });
			}
            resolve(res.data);
        }).catch(error => {
            let [err, res] = error;
            reject(err)
        }) 
    });
}

const http2 = (url = '', date = {}, type = 'POST', header = {
}) => {
    return new Promise((resolve, reject) => {
		header={};
		var imAccessToken= uni.getStorageSync("accessToken")
		var token= uni.getStorageSync("token")
		//token='431A242A-0694-4D6F-9657-C31AD25E7D15'
		if(token){
			header['token']=imAccessToken;
			//header['uid']=wxOpenData.loginInfo.uid; 
		} 
 
		header['Content-Type']='application/x-www-form-urlencoded';
		//console.log(header)
        uni.request({
            method: type,
            url: baseUrl + url,
            data: date,
            header: header,
            dataType: 'json',         
        }).then((response) => {
          
            let [error, res] = response;
		 
			if(res.data.code==401||res.data.code==403){
				
			}else if(res.data.code==409){
				
			}
			if(res.data.code==1){
				  uni.showToast({
				      title: res.data.msg,
				  	 icon:'none',
				      duration: 4000,
				  });
			}
            resolve(res.data);
        }).catch(error => {
            let [err, res] = error;
            reject(err)
        }) 
    });
}
// 请求图片流
const httpBinary = (url = '', date = {}, type = 'POST', header = {
}) => {
    return new Promise((resolve, reject) => {
		header={};
		//const wxOpenData = uni.getStorageSync("wxOpenData");
		var wxOpenData=$store.state.wxOpenData
		if(wxOpenData){	
			header['token']=wxOpenData.loginInfo.token;
			header['uid']=wxOpenData.loginInfo.uid; 
		}
		//header['token']='98A9FED8814B457288166BDF623F33D1';
		//header['uid']='39415962-C9D3-466D-A73F-5B5429A8DB2A'; 
		//header['Content-Type']='application/x-www-form-urlencoded';
		header['Content-Type']='application/json;charset=utf-8';
		//console.log(header)
        uni.request({
            method: type,
            url: baseUrl + url,
            data: date,
            header: header,
            dataType: 'json', 
			responseType: "arraybuffer",
        }).then((response) => {
           /* setTimeout(function() {
                uni.hideLoading();
            }, 200); */
            let [error, res] = response;
		 
			if(res.data.code==401||res.data.code==403){
				 uni.showToast({
				     title: res.data.msg,
				 	 icon:'none',
				     duration: 3000,
				 });
				 uni.clearStorageSync()
				 uni.navigateTo({
					url:'../login/login'
				}) 
			}else if(res.data.code==409){
				 // getToken(url,date,type,header)
			}
			
            resolve(res.data);
        }).catch(error => {
			uni.hideLoading();
            let [err, res] = error;
            reject(err)
        }) 
    });
}


function refresh(url,date,type,header){
	uni.request({
	    method: type,
	    url: baseUrl + url,
	    data: date,
	    header: header,
	    dataType: 'json',         
	}).then((response) => {
	   setTimeout(function() {
	        uni.hideLoading();
	    }, 200); 
	    let [error, res] = response;
	  
		if(res.data.code==403){
			uni.showToast({
			     title: res.data.msg,
			 	 icon:'none',
			     duration: 3000,
			 });
			 uni.navigateTo({
				url:'../login/login'
			}) 
		}
	    resolve(res.data);
	}).catch(error => {
	    let [err, res] = error;
	    reject(err)
	})
}

export default {
	http,baseUrl,httpBinary,http2
}