From 3bafe1323441beec50b61ffb09e2b530d5be72b2 Mon Sep 17 00:00:00 2001 From: Admin <978517621@qq.com> Date: 星期四, 08 九月 2022 16:47:35 +0800 Subject: [PATCH] Default Changelist --- src/utils/request.ts | 51 +++++++++++++++++++++++++++++++-------------------- 1 files changed, 31 insertions(+), 20 deletions(-) diff --git a/src/utils/request.ts b/src/utils/request.ts index 4abb65d..5cb1d16 100644 --- a/src/utils/request.ts +++ b/src/utils/request.ts @@ -1,7 +1,9 @@ import axios from 'axios'; import { ElMessage, ElMessageBox } from 'element-plus'; -import { Session } from '/@/utils/storage'; import JSONbig from 'json-bigint'; +import Cookies from 'js-cookie'; +import { useLoginApi } from '/@/api/login'; +import { Session } from '/@/utils/storage'; // var jsonBig = require('json-bigint')({ "storeAsString": true }); // 配置新建一个 axios 实例 @@ -18,9 +20,9 @@ config.data[key] = null; } } - if (Session.get('token')) { - (<any>config.headers).common['Authorization'] = `${Session.get('token')}`; - (<any>config.headers).common['uid'] = `${Session.get('uid')}`; + if (Cookies.get('token')) { + (<any>config.headers).common['Authorization'] = `${Cookies.get('token')}`; + (<any>config.headers).common['uid'] = `${Cookies.get('uid')}`; } return config; }, @@ -33,14 +35,19 @@ service.defaults.transformResponse = [ function (data) { try { + if(data.indexOf('PK')==-1){ + return JSONbig.parse(data); + }else{ + return data + } // 正常同通过return JSON.parse(data)对数据进行转换 // 但是转化完成的数据可能超出安全数据长度 // 因此我们定制使用第三包来转化 - return JSONbig.parse(data); + } catch (err) { - console.log(err); // 转换失败返回一个空对象 - return {}; + return { + }; } } ]; @@ -50,16 +57,21 @@ // 对响应数据做点什么 if (response.data.code && response.data.code === 'A0213') { ElMessage.error('用户uid不存在'); - setTimeout(() => { - Session.clear(); - window.location.href = '/'; - }, 1000); + useLoginApi() + .signOut() + .then(() => { + Session.clear(); + window.location.href = '/'; + }); } else if (response.data.code && response.data.code === 'A0215') { ElMessage.error('token失效'); - setTimeout(() => { - Session.clear(); - window.location.href = '/'; - }, 1000); + // logOut; + useLoginApi() + .signOut() + .then(() => { + Session.clear(); + window.location.href = '/'; + }); } // if(response.data.code && response.data.code !== '200'){ return Promise.resolve(response); @@ -68,7 +80,6 @@ // window.location.href = '/' // return Promise.reject(response) // const res = response.data; - // debugger // if (res.code && res.code !== 0) { // // `token` 过期或者账号已在别处登录 // if (res.code === 401 || res.code === 4001) { @@ -93,10 +104,10 @@ }, 1000); } else if (error.message == 'Network Error') { ElMessage.error('网络连接错误'); - // setTimeout(() => { - // Session.clear(); - // window.location.href = '/'; - // }, 1000); + setTimeout(() => { + Session.clear(); + window.location.href = '/'; + }, 1000); } else { if (error.response.data) ElMessage.error(error.response.data.error); else ElMessage.error('接口路径找不到'); -- Gitblit v1.9.2