feat: 对话的调试调整

This commit is contained in:
zoujing
2026-02-03 14:38:36 +08:00
parent d566344eb8
commit aff9233ce2
3 changed files with 76 additions and 34 deletions

View File

@@ -1,7 +1,7 @@
import axios from 'axios'
import cache from '@utils/cache'
import errorCode from '@constant/errorCode'
import { ElNotification , ElMessageBox, ElMessage } from 'element-plus'
import { ElNotification, ElMessageBox, ElMessage } from 'element-plus'
import { Session } from '@renderer/utils/storage'
import { tansParams } from '@utils/tansParams'
@@ -29,7 +29,7 @@ instance.interceptors.request.use(
// 是否需要防止数据重复提交
const isRepeatSubmit = (config.headers || {}).repeatSubmit === false
const token = Session.getToken();
if (token && !isToken) {
config.headers['Authorization'] = `Bearer ${token}` // 让每个请求携带自定义token 请根据实际情况自行修改
}
@@ -87,12 +87,13 @@ instance.interceptors.request.use(
// 添加响应拦截器
instance.interceptors.response.use(
(res) => {
console.log("🚀 ~ response:", res.data)
// 未设置状态码则默认成功状态
const code = res.data.code || 200
// 获取错误信息
const msg = (errorCode as any)[code] || res.data.msg || errorCode['default']
// 二进制数据则直接返回
if (res.request.responseType === 'blob' || res.request.responseType === 'arraybuffer') {
if (res.request.responseType === 'blob' || res.request.responseType === 'arraybuffer') {
return res.data
}
if (code === 401) {
@@ -103,10 +104,10 @@ instance.interceptors.response.use(
// useUserStore().logOut().then(() => {
// location.href = '/index'
// })
}).catch(() => {
isRelogin.show = false
})
}
}).catch(() => {
isRelogin.show = false
})
}
return Promise.reject('无效的会话,或者会话已过期,请重新登录。')
} else if (code === 500) {
ElMessage({ message: msg, type: 'error' })
@@ -118,7 +119,7 @@ instance.interceptors.response.use(
ElNotification.error({ title: msg })
return Promise.reject('error')
} else {
return Promise.resolve(res.data)
return Promise.resolve(res.data)
}
},
(error) => {
@@ -138,4 +139,34 @@ instance.interceptors.response.use(
}
)
// 封装基于 request 的 POST 请求(
export const postRequest = <ResponseModel>(url: string, data?: any, options?: any): Promise<ResponseModel> => {
return instance.request({
url,
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
data,
...(options || {}),
}) as Promise<ResponseModel>
}
// 封装基于 request 的 GET 请求
export const getRequest = <ResponseModel>(url: string, params?: any, options?: any): Promise<ResponseModel> => {
return instance.request({
url,
method: 'GET',
params,
...(options || {}),
}) as Promise<ResponseModel>
}
export default instance
/// 响应模型
export interface ResponseModel {
code: number;
msg: string | null;
data: any | null;
};