From f9c926251d45fb4930317c545d2d77b5f1a338a9 Mon Sep 17 00:00:00 2001
From: master <master@163.com>
Date: 星期二, 08 三月 2022 14:52:08 +0800
Subject: [PATCH] 添加设备分组页面以及功能
---
src/service/request.ts | 211 ++++++++++++++++++++++++++--------------------------
1 files changed, 106 insertions(+), 105 deletions(-)
diff --git a/src/service/request.ts b/src/service/request.ts
index d4be32f..1f6dbef 100644
--- a/src/service/request.ts
+++ b/src/service/request.ts
@@ -10,7 +10,7 @@
axios.defaults.withCredentials = true;
NProgress.configure({
- showSpinner: false
+ showSpinner: false
});
// 璇锋眰闃熷垪
@@ -21,137 +21,138 @@
// 蹇界暐瑙勫垯
const ignore = {
- NProgress: ["/sys/info/record"],
- token: ["/login", "/captcha"]
+ NProgress: ["/sys/info/record"],
+ token: ["/login", "/captcha"]
};
// Request
axios.interceptors.request.use(
- (config: any) => {
- const token = store.getters.token || "";
+ (config: any) => {
+ const token = store.getters.token || "";
- if (config.url) {
- if (!ignore.token.some((e) => config.url.includes(e))) {
- config.headers["Authorization"] = token;
- }
+ if (config.url) {
+ if (!ignore.token.some((e) => config.url.includes(e))) {
+ config.headers["Authorization"] = token;
+ }
- if (!ignore.NProgress.some((e) => config.url.includes(e))) {
- NProgress.start();
- }
- }
+ if (!ignore.NProgress.some((e) => config.url.includes(e))) {
+ NProgress.start();
+ }
+ }
- // 璇锋眰淇℃伅
- if (isDev) {
- console.group(config.url);
- console.log("method:", config.method);
- console.table("data:", config.method == "get" ? config.params : config.data);
- console.groupEnd();
- }
+ // 璇锋眰淇℃伅
+ if (isDev) {
+ console.log("config:", config);
+ console.group(config.url);
+ console.log("method:", config.method);
+ console.table("data:", config.method == "get" ? config.params : config.data);
+ console.groupEnd();
+ }
- // 楠岃瘉 token
- if (token) {
- if (config.url.includes("refreshToken")) {
- return config;
- }
+ // 楠岃瘉 token
+ if (token) {
+ if (config.url.includes("refreshToken")) {
+ return config;
+ }
- // 鍒ゆ柇 token 鏄惁杩囨湡
- if (storage.isExpired("token")) {
- // 鍒ゆ柇 refreshToken 鏄惁杩囨湡
- if (storage.isExpired("refreshToken")) {
- store.dispatch("userRemove");
- return href("/login");
- }
+ // 鍒ゆ柇 token 鏄惁杩囨湡
+ if (storage.isExpired("token")) {
+ // 鍒ゆ柇 refreshToken 鏄惁杩囨湡
+ if (storage.isExpired("refreshToken")) {
+ store.dispatch("userRemove");
+ return href("/login");
+ }
- // 鏄惁鍦ㄥ埛鏂颁腑
- if (!isRefreshing) {
- isRefreshing = true;
+ // 鏄惁鍦ㄥ埛鏂颁腑
+ if (!isRefreshing) {
+ isRefreshing = true;
- store.dispatch("refreshToken").then((token: string) => {
- requests.forEach((cb) => cb(token));
- requests = [];
- isRefreshing = false;
- });
- }
+ store.dispatch("refreshToken").then((token: string) => {
+ requests.forEach((cb) => cb(token));
+ requests = [];
+ isRefreshing = false;
+ });
+ }
- return new Promise((resolve) => {
- // 缁х画璇锋眰
- requests.push((token: string) => {
- // 閲嶆柊璁剧疆 token
- config.headers["Authorization"] = token;
- resolve(config);
- });
- });
- }
- }
+ return new Promise((resolve) => {
+ // 缁х画璇锋眰
+ requests.push((token: string) => {
+ // 閲嶆柊璁剧疆 token
+ config.headers["Authorization"] = token;
+ resolve(config);
+ });
+ });
+ }
+ }
- return config;
- },
- (error) => {
- return Promise.reject(error);
- }
+ return config;
+ },
+ (error) => {
+ return Promise.reject(error);
+ }
);
// Response
axios.interceptors.response.use(
- (res) => {
- NProgress.done();
- const { code, data, message } = res.data;
+ (res) => {
+ NProgress.done();
+ const { code, data, message } = res.data;
- if (!res.data) {
- return res;
- }
+ if (!res.data) {
+ return res;
+ }
- switch (code) {
- case 1000:
- return data;
- default:
- return Promise.reject(message);
- }
- },
- async (error) => {
- NProgress.done();
+ switch (code) {
+ case 1000:
+ return data;
+ default:
+ return Promise.reject(message);
+ }
+ },
+ async (error) => {
+ NProgress.done();
- if (error.response) {
- const { status, config } = error.response;
+ if (error.response) {
+ const { status, config } = error.response;
- switch (status) {
- case 401:
- await store.dispatch("userRemove");
- href("/login");
- break;
+ switch (status) {
+ case 401:
+ await store.dispatch("userRemove");
+ href("/login");
+ break;
- case 403:
- if (isDev) {
- ElMessage.error(`${config.url} 鏃犳潈闄愯闂紒锛乣);
- } else {
- href("/403");
- }
- break;
+ case 403:
+ if (isDev) {
+ ElMessage.error(`${config.url} 鏃犳潈闄愯闂紒锛乣);
+ } else {
+ href("/403");
+ }
+ break;
- case 404:
- break;
+ case 404:
+ break;
- case 500:
- if (!isDev) {
- href("/500");
- }
- break;
+ case 500:
+ if (!isDev) {
+ href("/500");
+ }
+ break;
- case 502:
- if (isDev) {
- ElMessage.error(`${config.url} 鏈嶅姟寮傚父锛侊紒`);
- } else {
- href("/502");
- }
- break;
+ case 502:
+ if (isDev) {
+ ElMessage.error(`${config.url} 鏈嶅姟寮傚父锛侊紒`);
+ } else {
+ href("/502");
+ }
+ break;
- default:
- console.error(status, config.url);
- }
- }
+ default:
+ console.error(status, config.url);
+ }
+ }
- return Promise.reject(error.message);
- }
+ return Promise.reject(error.message);
+ }
);
export default axios;
--
Gitblit v1.9.1