diff --git a/frontend/src/api/modules/plugin-extensions.ts b/frontend/src/api/modules/plugin-extensions.ts
index ad4aa873a..049e43cd9 100644
--- a/frontend/src/api/modules/plugin-extensions.ts
+++ b/frontend/src/api/modules/plugin-extensions.ts
@@ -2,6 +2,9 @@ import type { RequestConfig, RequestOptions } from '../request'
import { API_BASE_URL } from '../constants'
import request, { requestRaw } from '../request'
+// 管理路由可能执行长任务,HTTP 与页面桥使用同一等待上限。
+export const PLUGIN_MANAGEMENT_TIMEOUT_MS = 180_000
+
const MAXIMUM_MANAGEMENT_BODY_BYTES = 1024 * 1024
export interface PluginManagementTarget {
@@ -90,6 +93,7 @@ export function callPluginManagementRoute(
method: call.method,
data: call.body?.byteLength ? call.body : undefined,
headers: call.contentType ? { 'Content-Type': call.contentType } : undefined,
+ timeout: PLUGIN_MANAGEMENT_TIMEOUT_MS,
...options,
})
}
diff --git a/frontend/src/views/plugins/components/PluginVersionCard.vue b/frontend/src/views/plugins/components/PluginVersionCard.vue
index 8b1172eb2..413b9e122 100644
--- a/frontend/src/views/plugins/components/PluginVersionCard.vue
+++ b/frontend/src/views/plugins/components/PluginVersionCard.vue
@@ -57,7 +57,7 @@ const detailsId = useId()