axios
1、封装与拦截
import axios from "axios";
import { Message } from "element-ui";
import router from "@/router";
export const service = axios.create({
baseURL: process.env.VUE_APP_BASE_API,
});
console.log(process.env["VUE_APP_BASE_API"]);
1.1请求拦截
service.interceptors.request.use((config) => {
console.log(JSON.parse(localStorage.getItem("userInfo")["sessionId"]);
if (config.method === "get") {
config.params = {
sessionId: JSON.parse(localStorage.getItem("userInfo").sessionId,
...config.params,
};
} else if (config.method === "post") {
config.params = {
sessionId: JSON.parse(localStorage.getItem("userInfo").sessionId,
...config.params,
};
}
return config;
});
1.2 响应拦截
service.interceptors.response.use((success) => {
console.log(success);
if (success.status === 200) {
if (success.data.code === 0) {
return success.data;
} else if (success.data.code == 401) {
localStorage.clear();
Message.error("您的登录信息已过期");
router.push("/Login");
}
else {
Message.error(success.data.message);
return success.data;
}
} else {
Message.error("响应错误");
}
});
uniapp
2、request 请求封装
export const post_data = function (url, data) {
return new Promise(function (resolve, reject) {
uni.request({
url: url,
method: "POST",
header: {
version_code: "2022011101",
version_name: "V1.0.0",
app_type: 5,
channel: "miniprogram",
user_id: "5",
user_token: "1",
"content-type": "application/x-www-form-urlencoded",
},
data: data,
success(res) {
if (res.data.code == 0) {
console.log(res);
resolve(res.data.data);
} else {
console.log(url, res.data.msg);
uni.showToast({
title: res.data.msg,
duration: 2000,
icon: "none",
});
}
},
fail() {
console.log(url, "接口请求失败");
reject();
},
});
});
};