From c8d352989d1a5f0d4e74c0d5f682e515df9092aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A5=A5=E5=B0=98?= Date: Thu, 16 Oct 2025 14:54:53 +0800 Subject: [PATCH] =?UTF-8?q?fix(wolai):=20=E4=BF=AE=E5=A4=8D=20wolai=20?= =?UTF-8?q?=E5=89=AA=E8=97=8F=E4=B8=8A=E4=BC=A0=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/common/backend/services/wolai/service.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/common/backend/services/wolai/service.ts b/src/common/backend/services/wolai/service.ts index baadcc197..8b37197d7 100644 --- a/src/common/backend/services/wolai/service.ts +++ b/src/common/backend/services/wolai/service.ts @@ -128,7 +128,7 @@ export default class WolaiDocumentService implements DocumentService { Object.keys(data.policyData.formData).forEach((key) => { formData.append(key, data.policyData.formData[key]); }); - formData.append('key', filekey); + formData.append('key', data.fileUrl); formData.append('success_action_status', '200'); formData.append('file', file); await this.requestWithCookie(async (header) => { @@ -148,7 +148,7 @@ export default class WolaiDocumentService implements DocumentService { spaceId: repository.spaceId, type: 'string', bucket: data.policyData.bucket, - filename: filekey, + filename: data.fileUrl, pageTitle: title, pageId: documentId, }, @@ -244,6 +244,9 @@ export default class WolaiDocumentService implements DocumentService { getFileUrl = async (repository: WolaiRepository, file: File) => { return this.requestWithCookie(async (header) => { + // FIXME: 这里简单获取了文件后缀名,考虑到网页上的文件类型都是比较简单的,不会有类似 xxx.tar.gz 这种长后缀 + // 构造一个合法的新文件名,避免上传接口报错 + const fileName = `${this.getUuid()}.${file?.name?.split('.').pop()}` return this.request.post( await this.webRequestService.changeUrl('v1/file/getSignedPostUrl', header), { @@ -251,6 +254,7 @@ export default class WolaiDocumentService implements DocumentService { spaceId: repository.spaceId, fileSize: file.size, type: 'import', + fileName, }, } );