feat(usage): add loading overlay and 60s API timeout

This commit is contained in:
Supra4E8C
2025-12-18 01:03:12 +08:00
parent ec4b5ab46a
commit aecd5875d6
3 changed files with 53 additions and 2 deletions

View File

@@ -5,11 +5,13 @@
import { apiClient } from './client';
import { computeKeyStats, KeyStats } from '@/utils/usage';
const USAGE_TIMEOUT_MS = 60 * 1000;
export const usageApi = {
/**
* 获取使用统计原始数据
*/
getUsage: () => apiClient.get('/usage'),
getUsage: () => apiClient.get('/usage', { timeout: USAGE_TIMEOUT_MS }),
/**
* 计算密钥成功/失败统计,必要时会先获取 usage 数据
@@ -17,7 +19,7 @@ export const usageApi = {
async getKeyStats(usageData?: any): Promise<KeyStats> {
let payload = usageData;
if (!payload) {
const response = await apiClient.get('/usage');
const response = await apiClient.get('/usage', { timeout: USAGE_TIMEOUT_MS });
payload = response?.usage ?? response;
}
return computeKeyStats(payload);