From 9fca17e7ed66efcc324d6471db56967f71bdba27 Mon Sep 17 00:00:00 2001 From: hailin Date: Sun, 11 Jan 2026 01:10:05 -0800 Subject: [PATCH] =?UTF-8?q?fix(mining-admin-web):=20=E4=BF=AE=E5=A4=8Dauth?= =?UTF-8?q?=20API=E7=B1=BB=E5=9E=8B=E5=AE=9A=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更新 TypeScript 类型以匹配后端响应格式: - ApiResponse 包装器 - LoginData 和 ProfileData 接口 Co-Authored-By: Claude Opus 4.5 --- .../mining-admin-web/src/lib/api/auth.api.ts | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/frontend/mining-admin-web/src/lib/api/auth.api.ts b/frontend/mining-admin-web/src/lib/api/auth.api.ts index 8e04a540..493eff54 100644 --- a/frontend/mining-admin-web/src/lib/api/auth.api.ts +++ b/frontend/mining-admin-web/src/lib/api/auth.api.ts @@ -1,14 +1,32 @@ import { apiClient } from './client'; +// 后端统一响应格式 +interface ApiResponse { + success: boolean; + data: T; + timestamp: string; +} + +interface LoginData { + token: string; + admin: { id: string; username: string; name: string; role: string }; +} + +interface ProfileData { + id: string; + username: string; + role: string; +} + export const authApi = { login: (username: string, password: string) => - apiClient.post<{ accessToken: string; admin: { id: string; username: string; role: string } }>('/auth/login', { + apiClient.post>('/auth/login', { username, password, }), getProfile: () => - apiClient.get<{ id: string; username: string; role: string }>('/auth/profile'), + apiClient.get>('/auth/profile'), changePassword: (oldPassword: string, newPassword: string) => apiClient.post('/auth/change-password', { oldPassword, newPassword }),