From d5d570829b5c6c2db793204d8ad21a4e489e6457 Mon Sep 17 00:00:00 2001 From: Wenjie Zhang Date: Fri, 9 May 2025 16:11:03 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E4=B8=8A=E4=BC=A0=E7=9A=84=E6=9D=83=E9=99=90?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/apis/admin_api.js | 12 ++++++++++-- web/src/views/DataBaseInfoView.vue | 7 +++++++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/web/src/apis/admin_api.js b/web/src/apis/admin_api.js index b0a9596b..15dd3bdd 100644 --- a/web/src/apis/admin_api.js +++ b/web/src/apis/admin_api.js @@ -119,13 +119,21 @@ export const knowledgeBaseApi = { */ uploadFile: async (formData, dbId) => { checkAdminPermission() + const userStore = useUserStore() + const authHeaders = userStore.getAuthHeaders() + return fetch(`/api/data/upload?db_id=${dbId}`, { method: 'POST', headers: { - ...useUserStore().getAuthHeaders() + ...authHeaders }, body: formData - }).then(res => res.json()) + }).then(res => { + if (!res.ok) { + throw new Error(`上传失败: ${res.status} ${res.statusText}`) + } + return res.json() + }) }, /** diff --git a/web/src/views/DataBaseInfoView.vue b/web/src/views/DataBaseInfoView.vue index 5fbf04d4..ed566b8d 100644 --- a/web/src/views/DataBaseInfoView.vue +++ b/web/src/views/DataBaseInfoView.vue @@ -127,6 +127,7 @@ :multiple="true" :disabled="state.loading" :action="'/api/data/upload?db_id=' + databaseId" + :headers="getAuthHeaders()" @change="handleFileUpload" @drop="handleDrop" > @@ -316,6 +317,7 @@ import { onMounted, reactive, ref, watch, toRaw, onUnmounted, computed } from 'v import { message, Modal } from 'ant-design-vue'; import { useRoute, useRouter } from 'vue-router'; import { useConfigStore } from '@/stores/config' +import { useUserStore } from '@/stores/user' import { knowledgeBaseApi } from '@/apis/admin_api' import HeaderComponent from '@/components/HeaderComponent.vue'; import { @@ -799,6 +801,11 @@ const chunkData = () => { } } +const getAuthHeaders = () => { + const userStore = useUserStore(); + return userStore.getAuthHeaders(); +}; +