From d4c82ac07e7f6381acb625187b694eccf50b6821 Mon Sep 17 00:00:00 2001 From: truewhile <62226914+truewhile@users.noreply.github.com> Date: Wed, 2 Sep 2026 22:15:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/api/admin.ts | 10 +++++++--- web/src/api/client.ts | 1 + 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/web/src/api/admin.ts b/web/src/api/admin.ts index 98f3d86..4779312 100644 --- a/web/src/api/admin.ts +++ b/web/src/api/admin.ts @@ -1,4 +1,4 @@ -import { api } from './client' +import { api, MIGRATION_REQUEST_TIMEOUT } from './client' import type { AccessLog, Setting, User } from '../types' export interface DatabaseStatus { @@ -137,8 +137,12 @@ export const adminAPI = { testDatabaseConnection: (payload: DatabaseConnectionPayload) => api.post('/admin/database/test', payload).then((r) => r.data), - migrateDatabase: (payload: DatabaseConnectionPayload) => - api.post('/admin/database/migrate', payload).then((r) => r.data), + migrateDatabase: (payload: DatabaseConnectionPayload) => + api + .post('/admin/database/migrate', payload, { + timeout: MIGRATION_REQUEST_TIMEOUT, + }) + .then((r) => r.data), saveDatabaseConfig: (payload: DatabaseConnectionPayload) => api.post<{ message: string; type: string }>('/admin/database/save-config', payload).then((r) => r.data), diff --git a/web/src/api/client.ts b/web/src/api/client.ts index b1e8714..d5f0e6f 100644 --- a/web/src/api/client.ts +++ b/web/src/api/client.ts @@ -12,6 +12,7 @@ export const api = axios.create({ export const LONG_REQUEST_TIMEOUT = 120_000 export const BATCH_REQUEST_TIMEOUT = 300_000 +export const MIGRATION_REQUEST_TIMEOUT = 600_000 // Flag to prevent multiple simultaneous refresh attempts let isRefreshing = false