Kaynağa Gözat

修改接口,添加headers

wangrulan 2 yıl önce
ebeveyn
işleme
11fd907fd3
3 değiştirilmiş dosya ile 118 ekleme ve 3 silme
  1. 2 1
      src/common/js/home.js
  2. 3 2
      src/utils/request.js
  3. 113 0
      src/utils/request2.js

+ 2 - 1
src/common/js/home.js

@@ -1,7 +1,8 @@
 import request from '../../utils/request'
+import request2 from '../../utils/request2'
 //获取权限信息
 export function getVerification(data) {
-  return request({
+  return request2({
     url: '/api/verification',
     method: 'post',
     data: data

+ 3 - 2
src/utils/request.js

@@ -23,8 +23,9 @@ service.interceptors.request.use(config => {
   let Authorization_fromSystem = sessionStorage.getItem('Authorization-fromSystem')
   // console.log(Authorization_Token);
   // console.log(Authorization_fromSystem);
-  config.headers["X-Authorization-Token"] = (process.env.NODE_ENV === 'hebei' ? (Authorization_Token ? Authorization_Token : '') : '')
-  config.headers["X-Authorization-fromSystem"] = (process.env.NODE_ENV === 'hebei' ? (Authorization_fromSystem ? Authorization_fromSystem : '') : '')
+  config.headers["X-Authorization-Token"] = Authorization_Token
+  config.headers["X-Authorization-fromSystem"] = Authorization_fromSystem
+  config.headers["X-Authorization-system"] = 'permission'
   // get请求映射params参数
   if (config.method === 'get' && config.params) {
     let url = config.url + '?';

+ 113 - 0
src/utils/request2.js

@@ -0,0 +1,113 @@
+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选项,表示请求URL公共部分
+  baseURL: process.env.VUE_APP_BASE_API,
+  // 超时
+  timeout: 30000
+})
+// request拦截器
+service.interceptors.request.use(config => {
+  // 是否需要设置 token
+  const isToken = (config.headers || {}).isToken === false
+  // if (getToken() && !isToken) {
+  //   config.headers['Authorization'] = 'Bearer ' + getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
+  // }
+  let Authorization_Token = sessionStorage.getItem('Authorization-Token')
+  let Authorization_fromSystem = sessionStorage.getItem('Authorization-fromSystem')
+  // console.log(Authorization_Token);
+  // console.log(Authorization_fromSystem);
+  config.headers["X-Authorization-Token"] = Authorization_Token
+  config.headers["X-Authorization-fromSystem"] = Authorization_fromSystem
+  config.headers["X-Authorization-system"] = 'web'
+  // 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)) {
+            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']
+    console.log('code: ', code);
+    if (code == 401) {
+      MessageBox.confirm('登录状态已过期,请重新登录!', '系统提示', {
+          confirmButtonText: '关闭当前页面',
+          cancelButtonText: '取消',
+          type: 'warning'
+        }
+      ).then(() => {
+        window.opener = null;
+        window.open("about:blank", "_top").close()
+        this.$router.push({path: "/home"});
+        location.reload()
+      }).catch(() => {});
+      // return Promise.reject()
+    } else if (code === 500) {
+      Message({
+        message: msg,
+        type: 'error'
+      })
+      return Promise.reject(new Error(msg))
+    }else if (code !== 200 && code != 1 && code != '-1' && code != 0 && code != '-2' && code != '-3') {
+      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