From 898c800c965de8139828a8470b41dcfbfab56957 Mon Sep 17 00:00:00 2001 From: Weilong Liao <37870767+Soulter@users.noreply.github.com> Date: Tue, 16 Jun 2026 17:00:23 +0800 Subject: [PATCH] fix: upload skills with generated multipart body Fixes #8794. --- dashboard/src/api/v1.ts | 4 ++-- dashboard/src/components/extension/SkillsSection.vue | 9 +++------ 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/dashboard/src/api/v1.ts b/dashboard/src/api/v1.ts index 81bfad225..91d795686 100644 --- a/dashboard/src/api/v1.ts +++ b/dashboard/src/api/v1.ts @@ -1322,9 +1322,9 @@ export const skillApi = { list(params?: { enabled?: boolean; source?: string }) { return typed(openApiV1.listSkills({ query: params })); }, - uploadBatch(formData: FormData) { + uploadBatch(files: File[]) { return typed( - openApiV1.uploadSkillsBatch({ body: generatedFormData(formData) }), + openApiV1.uploadSkillsBatch({ body: { files } }), ); }, setEnabled(skillName: string, enabled: boolean) { diff --git a/dashboard/src/components/extension/SkillsSection.vue b/dashboard/src/components/extension/SkillsSection.vue index 62f0d3c4b..03ec8af8d 100644 --- a/dashboard/src/components/extension/SkillsSection.vue +++ b/dashboard/src/components/extension/SkillsSection.vue @@ -1195,12 +1195,9 @@ export default { } try { - const formData = new FormData(); - for (const item of attemptedItems) { - formData.append("files", item.file); - } - - const res = await skillApi.uploadBatch(formData); + const res = await skillApi.uploadBatch( + attemptedItems.map((item) => item.file), + ); const payload = res?.data?.data || {}; applyUploadResults(attemptedItems, payload);