import config from '@/config/index.js' import {toLogin} from '@/utils/tologin.js' import {getToken,removeToken} from '@/utils/token.js' import qs from 'qs' const ReLoginUrl="/login"; const formatUrl=function(url){ return url; // if(url.startsWith('http') || url.startsWith('https')){ // //console.log(url,"我拿到的url值,我想知道下面有啥方法") // return url; // }else{ // return config.oldApiBaseUrl+url // } } const formRequest=function(method,url,data){ let token=getToken(); if(!token){ token=''; } let headers={ 'content-type':'application/x-www-form-urlencoded', 'token':token } let reUrl=formatUrl(url); return new Promise(function(resolve, reject){ uni.request({ url: reUrl, method, data: data, xhrFields: {withCredentials: true}, dataType: 'json', header: headers, success:function(rs,statusCode){ if(rs.statusCode==200){ if(rs.data.status==6001){ //uni.removeStorageSync('userInfo'); removeToken(); toLogin(reUrl); }else{ resolve(rs.data); } }else{ reject("API请求错误"); } }, fail:function(err){ reject(err); } }); }); } const jsonRequest=function(method,url,data){ let token=getToken(); if(!token){ token=''; } let headers={ 'token':token } let reUrl=formatUrl(url); return new Promise(function(resolve, reject){ uni.request({ url: reUrl, method, data: data, xhrFields: {withCredentials: true}, dataType: 'json', header: headers, success:function(rs,statusCode){ if(rs.statusCode==200){ if(rs.data.status==6001){ removeToken(); toLogin(reUrl); }else{ resolve(rs.data); } }else{ reject("API请求错误"); } }, fail:function(err){ reject(err); } }); }); } //get请求 const get=function(url){ return formRequest('GET',url,''); } //post请求 const post=function(url,data){ if(data){ data=qs.stringify(data); } return formRequest('POST',url,data); } //postJson请求 const postJson=function(url,json){ return jsonRequest('POST',url,json); } //put请求 const put=function(url,data){ if(data){ data=qs.stringify(data); } return formRequest('PUT',url,data); } //putJson请求 const putJson=function(url,json){ return jsonRequest('PUT',url,json); } //patch请求 const patch=function(url,data){ if(data){ data=qs.stringify(data); } return formRequest('PATCH',url,data); } //patchJson请求 const patchJson=function(url,json){ return jsonRequest('PATCH',url,json); } //delete请求 const del=function(url,data){ if(data){ data=qs.stringify(data); } return formRequest('DELETE',url,data); } export default { get, post, postJson, put, putJson, patch, patchJson, del }