From db193a46e8a8a5cdc0c4bcde7b2126af85b6ef0b Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期一, 13 九月 2021 09:36:38 +0800
Subject: [PATCH] 若依 3.7.0
---
ruoyi-ui/src/utils/request.js | 209 ++++++++++++++++++++++++++-------------------------
1 files changed, 106 insertions(+), 103 deletions(-)
diff --git a/ruoyi-ui/src/utils/request.js b/ruoyi-ui/src/utils/request.js
index 7cc6043..9b40b4a 100644
--- a/ruoyi-ui/src/utils/request.js
+++ b/ruoyi-ui/src/utils/request.js
@@ -1,103 +1,106 @@
-import axios from 'axios'
-import { Notification, MessageBox, Message } from 'element-ui'
-import store from '@/store'
-import { getToken } from '@/utils/auth'
-import errorCode from '@/utils/errorCode'
-
-axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
-// 鍒涘缓axios瀹炰緥
-const service = axios.create({
- // axios涓姹傞厤缃湁baseURL閫夐」锛岃〃绀鸿姹俇RL鍏叡閮ㄥ垎
- baseURL: process.env.VUE_APP_BASE_API,
- // 瓒呮椂
- timeout: 10000
-})
-// request鎷︽埅鍣�
-service.interceptors.request.use(config => {
- // 鏄惁闇�瑕佽缃� token
- const isToken = (config.headers || {}).isToken === false
- if (getToken() && !isToken) {
- config.headers['Authorization'] = 'Bearer ' + getToken() // 璁╂瘡涓姹傛惡甯﹁嚜瀹氫箟token 璇锋牴鎹疄闄呮儏鍐佃嚜琛屼慨鏀�
- }
- // get璇锋眰鏄犲皠params鍙傛暟
- if (config.method === 'get' && config.params) {
- let url = config.url + '?';
- for (const propName of Object.keys(config.params)) {
- const value = config.params[propName];
- var part = encodeURIComponent(propName) + "=";
- if (value && typeof(value) !== "undefined") {
- if (typeof value === 'object') {
- for (const key of Object.keys(value)) {
- let params = propName + '[' + key + ']';
- var subPart = encodeURIComponent(params) + "=";
- url += subPart + encodeURIComponent(value[key]) + "&";
- }
- } else {
- url += part + encodeURIComponent(value) + "&";
- }
- }
- }
- url = url.slice(0, -1);
- config.params = {};
- config.url = url;
- }
- return config
-}, error => {
- console.log(error)
- Promise.reject(error)
-})
-
-// 鍝嶅簲鎷︽埅鍣�
-service.interceptors.response.use(res => {
- // 鏈缃姸鎬佺爜鍒欓粯璁ゆ垚鍔熺姸鎬�
- const code = res.data.code || 200;
- // 鑾峰彇閿欒淇℃伅
- const msg = errorCode[code] || res.data.msg || errorCode['default']
- if (code === 401) {
- MessageBox.confirm('鐧诲綍鐘舵�佸凡杩囨湡锛屾偍鍙互缁х画鐣欏湪璇ラ〉闈紝鎴栬�呴噸鏂扮櫥褰�', '绯荤粺鎻愮ず', {
- confirmButtonText: '閲嶆柊鐧诲綍',
- cancelButtonText: '鍙栨秷',
- type: 'warning'
- }
- ).then(() => {
- store.dispatch('LogOut').then(() => {
- location.href = '/index';
- })
- })
- } else if (code === 500) {
- Message({
- message: msg,
- type: 'error'
- })
- return Promise.reject(new Error(msg))
- } else if (code !== 200) {
- Notification.error({
- title: msg
- })
- return Promise.reject('error')
- } else {
- return res.data
- }
- },
- error => {
- console.log('err' + error)
- let { message } = error;
- if (message == "Network Error") {
- message = "鍚庣鎺ュ彛杩炴帴寮傚父";
- }
- else if (message.includes("timeout")) {
- message = "绯荤粺鎺ュ彛璇锋眰瓒呮椂";
- }
- else if (message.includes("Request failed with status code")) {
- message = "绯荤粺鎺ュ彛" + message.substr(message.length - 3) + "寮傚父";
- }
- Message({
- message: message,
- type: 'error',
- duration: 5 * 1000
- })
- return Promise.reject(error)
- }
-)
-
-export default service
+import axios from 'axios'
+import { Notification, MessageBox, Message } from 'element-ui'
+import store from '@/store'
+import { getToken } from '@/utils/auth'
+import errorCode from '@/utils/errorCode'
+
+axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8'
+// 鍒涘缓axios瀹炰緥
+const service = axios.create({
+ // axios涓姹傞厤缃湁baseURL閫夐」锛岃〃绀鸿姹俇RL鍏叡閮ㄥ垎
+ baseURL: process.env.VUE_APP_BASE_API,
+ // 瓒呮椂
+ timeout: 10000
+})
+// request鎷︽埅鍣�
+service.interceptors.request.use(config => {
+ // 鏄惁闇�瑕佽缃� token
+ const isToken = (config.headers || {}).isToken === false
+ if (getToken() && !isToken) {
+ config.headers['Authorization'] = 'Bearer ' + getToken() // 璁╂瘡涓姹傛惡甯﹁嚜瀹氫箟token 璇锋牴鎹疄闄呮儏鍐佃嚜琛屼慨鏀�
+ }
+ // get璇锋眰鏄犲皠params鍙傛暟
+ if (config.method === 'get' && config.params) {
+ let url = config.url + '?';
+ for (const propName of Object.keys(config.params)) {
+ const value = config.params[propName];
+ var part = encodeURIComponent(propName) + "=";
+ if (value !== null && typeof(value) !== "undefined") {
+ if (typeof value === 'object') {
+ for (const key of Object.keys(value)) {
+ if (value[key] !== null && typeof (value[key]) !== 'undefined') {
+ let params = propName + '[' + key + ']';
+ let subPart = encodeURIComponent(params) + '=';
+ url += subPart + encodeURIComponent(value[key]) + '&';
+ }
+ }
+ } else {
+ url += part + encodeURIComponent(value) + "&";
+ }
+ }
+ }
+ url = url.slice(0, -1);
+ config.params = {};
+ config.url = url;
+ }
+ return config
+}, error => {
+ console.log(error)
+ Promise.reject(error)
+})
+
+// 鍝嶅簲鎷︽埅鍣�
+service.interceptors.response.use(res => {
+ // 鏈缃姸鎬佺爜鍒欓粯璁ゆ垚鍔熺姸鎬�
+ const code = res.data.code || 200;
+ // 鑾峰彇閿欒淇℃伅
+ const msg = errorCode[code] || res.data.msg || errorCode['default']
+ if (code === 401) {
+ MessageBox.confirm('鐧诲綍鐘舵�佸凡杩囨湡锛屾偍鍙互缁х画鐣欏湪璇ラ〉闈紝鎴栬�呴噸鏂扮櫥褰�', '绯荤粺鎻愮ず', {
+ confirmButtonText: '閲嶆柊鐧诲綍',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }
+ ).then(() => {
+ store.dispatch('LogOut').then(() => {
+ location.href = '/index';
+ })
+ }).catch(() => {});
+ return Promise.reject('鏃犳晥鐨勪細璇濓紝鎴栬�呬細璇濆凡杩囨湡锛岃閲嶆柊鐧诲綍銆�')
+ } else if (code === 500) {
+ Message({
+ message: msg,
+ type: 'error'
+ })
+ return Promise.reject(new Error(msg))
+ } else if (code !== 200) {
+ Notification.error({
+ title: msg
+ })
+ return Promise.reject('error')
+ } else {
+ return res.data
+ }
+ },
+ error => {
+ console.log('err' + error)
+ let { message } = error;
+ if (message == "Network Error") {
+ message = "鍚庣鎺ュ彛杩炴帴寮傚父";
+ }
+ else if (message.includes("timeout")) {
+ message = "绯荤粺鎺ュ彛璇锋眰瓒呮椂";
+ }
+ else if (message.includes("Request failed with status code")) {
+ message = "绯荤粺鎺ュ彛" + message.substr(message.length - 3) + "寮傚父";
+ }
+ Message({
+ message: message,
+ type: 'error',
+ duration: 5 * 1000
+ })
+ return Promise.reject(error)
+ }
+)
+
+export default service
--
Gitblit v1.9.3