Sfoglia il codice sorgente

feat(workflowService): 优化工作流配置获取方式,移除冗余函数并直接使用配置常量

Zhang Yice 1 mese fa
parent
commit
4baaac5a6e
1 ha cambiato i file con 7 aggiunte e 13 eliminazioni
  1. 7 13
      src/services/workflowService.ts

+ 7 - 13
src/services/workflowService.ts

@@ -76,18 +76,14 @@ interface WorkflowConfig {
76 76
   apiUrl: string;
77 77
 }
78 78
 
79
-/**
80
- * Get Workflow configuration from environment variables
81
- */
82
-const getWorkflowConfig = (): WorkflowConfig => {
83
-  return {
84
-    apiUrl: import.meta.env.VITE_WORKFLOW_PROXY_URL,
85
-  };
79
+const WORKFLOW_TIMEOUT_MS = 150_000;
80
+const workflowConfig: WorkflowConfig = {
81
+  apiUrl: import.meta.env.VITE_WORKFLOW_PROXY_URL,
86 82
 };
83
+const configuredBaseUrl = import.meta.env.VITE_API_BASE_URL;
87 84
 
88 85
 /** Normalize workflow-generated export URLs to the configured backend origin. */
89 86
 const normalizeExportDownloadUrl = (downloadUrl: string): string => {
90
-  const configuredBaseUrl = import.meta.env.VITE_API_BASE_URL;
91 87
   if (!configuredBaseUrl || !downloadUrl) return downloadUrl;
92 88
 
93 89
   try {
@@ -147,9 +143,7 @@ export const triggerDocumentWorkflow = async (
147 143
   sessionId: string
148 144
 ): Promise<{ content: string; exportRecord?: ExportRecordInfo }> => {
149 145
   try {
150
-    const config = getWorkflowConfig();
151
-
152
-    if (!config.apiUrl) {
146
+    if (!workflowConfig.apiUrl) {
153 147
       return { content: '工作流未配置,无法生成文档。请检查前端环境配置。' };
154 148
     }
155 149
 
@@ -164,7 +158,7 @@ export const triggerDocumentWorkflow = async (
164 158
     // 1. chatId: 带时间戳的唯一ID,确保每次请求都被视为新请求
165 159
     // 2. sessionId: 原始会话ID,传递给工作流,工作流会将其传递给后端 /api/v1/export/records
166 160
     // 3. 后端在创建文档时会使用这个sessionId,确保同一会话的多个文档共用相同的session_id
167
-    const response = await fetchWithTimeout(config.apiUrl, {
161
+    const response = await fetchWithTimeout(workflowConfig.apiUrl, {
168 162
       method: 'POST',
169 163
       headers: {
170 164
         'Content-Type': 'application/json',
@@ -182,7 +176,7 @@ export const triggerDocumentWorkflow = async (
182 176
           },
183 177
         ],
184 178
       } as WorkflowRequest),
185
-    });
179
+    }, WORKFLOW_TIMEOUT_MS);
186 180
 
187 181
     if (!response.ok) {
188 182
       const errorText = await response.text();