import config from "@/config"; // 配置文件 import storage from "./storage"; // 缓存封装 export default { console(options){ if(config.debug){ // console.log("<<===============================================>>"); // console.log("request start"); // console.log("header" + JSON.stringify(options.header)); // console.log("method: " + options.method + " URL: " + options.url); // console.log(options.data); // console.log("request end"); // console.log("<<===============================================>>"); } }, domain(){ return config.uni_app_web_api_url.replace("api",""); }, send(options={}){ // loading加载 if(options.data.serviceId!=3021){ uni.showLoading({ title: '加载中' }); } // 拼接路劲,下面的配置文件会提到 options.url = config.uni_app_web_api_url + '' + options.url; // 请求方式 options.method = options.method || "GET"; // 这里看项目的情况来定,如果是没有token,那就删除这里,上面的storage也不需要引入 let users = storage.getJson("users"); if(users != null){ // options.header = { "user_id" : users.user_id }; options.header = { "user_token" : users.user_token,"user_id" : users.user_id }; // options.headers["user_id"] = users.user_id; // options.headers["user_token"] = users.user_token; // options.data['token'] = users.token } console.log(options); // 打印请求数据,调试用,上线可以注释 // 发起Promise请求 return new Promise((resolve, reject) =>{ uni.request(options).then(data=>{ var [error, res] = data; if(error != null){ reject(error); uni.hideLoading(); }else{ // 相应拦截、根据后端的状态码来写,可以自行判断和封装 console.log(res) if(res.data.code == '-1'){ // uni.showToast({ // icon: 'none', // title: res.data.message, // duration: 5000 // }); // uni.reLaunch({ // url: "/pages/login/index", // success:() => { // } // }); uni.hideLoading(); }else{ resolve(res.data); uni.hideLoading(); } uni.hideLoading(); } }).catch(data =>{ uni.showToast({ icon: 'none', title: "服务器错误", duration: 5000 }); uni.hideLoading(); }); }); }, get(url="",data={}){ return this.send({ url: url, data: data }); }, post(url="",data={}){ return this.send({ url: url, data: data, method: "POST" }); } };