对话逻辑修复

This commit is contained in:
2025-07-25 17:48:02 +08:00
parent a4c6140ed5
commit f576de68da
31 changed files with 2129 additions and 588 deletions
+27 -8
View File
@@ -35,20 +35,39 @@ api.interceptors.request.use(
api.interceptors.response.use(
(response: AxiosResponse<ApiResponse>) => {
const { data } = response
// 检查业务状态码
if (data.code !== 200) {
console.error('API Error:', data.message)
return Promise.reject(new Error(data.message))
console.error('API Business Error:', {
code: data.code,
message: data.message,
url: response.config.url
})
// 对于认证错误,特殊处理
if (data.code === 401) {
localStorage.removeItem('token')
window.location.href = '/login'
}
const error = new Error(data.message || '请求失败')
error.response = response
return Promise.reject(error)
}
return response
},
(error) => {
// 处理HTTP错误
if (error.response) {
const { status, data } = error.response
console.error('HTTP Error:', {
status,
url: error.config?.url,
message: data?.message || error.message
})
switch (status) {
case 401:
// 未授权,清除token并跳转到登录页
@@ -72,7 +91,7 @@ api.interceptors.response.use(
} else {
console.error('Request setup error:', error.message)
}
return Promise.reject(error)
}
)
@@ -121,11 +140,11 @@ export const messageApi = {
// 搜索用户消息
searchUserMessages: (keyword: string, limit: number = 50) =>
request.get(`/message/user/search`, { params: { keyword, limit } }),
request.post(`/message/user/search`, { keyword, limit }),
// 获取用户最近的聊天记录
getRecentMessages: (limit: number = 10) =>
request.get(`/message/user/recent`, { params: { limit } }),
request.post(`/message/user/recent`, { limit }),
// 获取消息详情
getMessageById: (id: string) =>