增加前端格式检查配置
This commit is contained in:
@@ -37,13 +37,14 @@ function logRequest(config: InternalAxiosRequestConfig) {
|
||||
|
||||
function logResponse(response: AxiosResponse) {
|
||||
if (import.meta.env.DEV) {
|
||||
const duration = response.config._startTime
|
||||
? Date.now() - response.config._startTime
|
||||
: 0
|
||||
console.log(`[API Response] ${response.config.method?.toUpperCase()} ${response.config.url} (${duration}ms)`, {
|
||||
status: response.status,
|
||||
data: response.data,
|
||||
})
|
||||
const duration = response.config._startTime ? Date.now() - response.config._startTime : 0
|
||||
console.log(
|
||||
`[API Response] ${response.config.method?.toUpperCase()} ${response.config.url} (${duration}ms)`,
|
||||
{
|
||||
status: response.status,
|
||||
data: response.data,
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
// 记录性能指标
|
||||
@@ -61,14 +62,15 @@ function logResponse(response: AxiosResponse) {
|
||||
|
||||
function logError(error: AxiosError) {
|
||||
if (import.meta.env.DEV) {
|
||||
const duration = error.config?._startTime
|
||||
? Date.now() - error.config._startTime
|
||||
: 0
|
||||
console.error(`[API Error] ${error.config?.method?.toUpperCase()} ${error.config?.url} (${duration}ms)`, {
|
||||
status: error.response?.status,
|
||||
message: error.message,
|
||||
data: error.response?.data,
|
||||
})
|
||||
const duration = error.config?._startTime ? Date.now() - error.config._startTime : 0
|
||||
console.error(
|
||||
`[API Error] ${error.config?.method?.toUpperCase()} ${error.config?.url} (${duration}ms)`,
|
||||
{
|
||||
status: error.response?.status,
|
||||
message: error.message,
|
||||
data: error.response?.data,
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
// 记录错误指标
|
||||
@@ -181,29 +183,32 @@ function isRefreshRequest(url = '') {
|
||||
return url.endsWith('/auth/refresh') || url.endsWith('/admin/auth/refresh')
|
||||
}
|
||||
|
||||
apiClient.interceptors.request.use((config) => {
|
||||
const scope = getRequestScope(config.url || '')
|
||||
const token = getAccessToken(scope)
|
||||
if (token) {
|
||||
config.headers.Authorization = `Bearer ${token}`
|
||||
apiClient.interceptors.request.use(
|
||||
config => {
|
||||
const scope = getRequestScope(config.url || '')
|
||||
const token = getAccessToken(scope)
|
||||
if (token) {
|
||||
config.headers.Authorization = `Bearer ${token}`
|
||||
}
|
||||
|
||||
// 记录请求日志
|
||||
logRequest(config)
|
||||
|
||||
return config
|
||||
},
|
||||
error => {
|
||||
logError(error)
|
||||
return Promise.reject(error)
|
||||
}
|
||||
|
||||
// 记录请求日志
|
||||
logRequest(config)
|
||||
|
||||
return config
|
||||
}, (error) => {
|
||||
logError(error)
|
||||
return Promise.reject(error)
|
||||
})
|
||||
)
|
||||
|
||||
apiClient.interceptors.response.use(
|
||||
(response) => {
|
||||
response => {
|
||||
// 记录响应日志
|
||||
logResponse(response)
|
||||
return response
|
||||
},
|
||||
async (error) => {
|
||||
async error => {
|
||||
// 记录错误日志
|
||||
logError(error)
|
||||
|
||||
@@ -231,7 +236,7 @@ apiClient.interceptors.response.use(
|
||||
if (state.refreshing) {
|
||||
return new Promise<string>((resolve, reject) => {
|
||||
state.pendingRequests.push({ resolve, reject })
|
||||
}).then((newToken) => {
|
||||
}).then(newToken => {
|
||||
originalRequest._retry = true
|
||||
originalRequest.headers.Authorization = `Bearer ${newToken}`
|
||||
return apiClient(originalRequest)
|
||||
@@ -255,5 +260,5 @@ apiClient.interceptors.response.use(
|
||||
} finally {
|
||||
state.refreshing = false
|
||||
}
|
||||
},
|
||||
}
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user