diff --git a/projects/app/src/pages/dataset/list/index.tsx b/projects/app/src/pages/dataset/list/index.tsx
index 372637331..f2e2c4d64 100644
--- a/projects/app/src/pages/dataset/list/index.tsx
+++ b/projects/app/src/pages/dataset/list/index.tsx
@@ -34,6 +34,7 @@ import ParentPaths from '@/components/common/ParentPaths';
import DatasetTypeTag from '@/components/core/dataset/DatasetTypeTag';
import { useToast } from '@fastgpt/web/hooks/useToast';
import { getErrText } from '@fastgpt/global/common/error/utils';
+import { getToken } from '@/web/support/user/auth';
const CreateModal = dynamic(() => import('./component/CreateModal'), { ssr: false });
const MoveModal = dynamic(() => import('./component/MoveModal'), { ssr: false });
@@ -90,12 +91,9 @@ const Kb = () => {
mutationFn: async (dataset: DatasetItemType) => {
setLoading(true);
await checkTeamExportDatasetLimit(dataset._id);
- const a = document.createElement('a');
- a.href = `/api/core/dataset/exportAll?datasetId=${dataset._id}`;
- a.download = `${dataset.name}.csv`;
- document.body.appendChild(a);
- a.click();
- document.body.removeChild(a);
+ const url = `/api/core/dataset/exportAll?datasetId=${dataset._id}`;
+ const name = `${dataset.name}.csv`;
+ localDownLoadWithToken(url, name, getToken());
},
onSettled() {
setLoading(false);
@@ -103,6 +101,26 @@ const Kb = () => {
errorToast: t('dataset.Export Dataset Limit Error')
});
+ const localDownLoadWithToken = (url: string | URL, filename: string, token: string) => {
+ var xhr = new XMLHttpRequest();
+ xhr.open('GET', url, true);
+ xhr.setRequestHeader("token", token);
+ xhr.responseType = 'blob';
+ xhr.onload = function (e) {
+ if (this.status == 200) {
+ var blob = this.response;
+ var a = document.createElement('a');
+ var url = URL.createObjectURL(blob);
+ a.href = url;
+ a.download = filename;
+ a.click();
+ window.URL.revokeObjectURL(url);
+ }
+ };
+ xhr.send();
+ };
+
+
const { data, refetch, isFetching } = useQuery(
['loadDataset', parentId],
() => {
@@ -238,7 +256,7 @@ const Kb = () => {
parentId: dragTargetId
});
refetch();
- } catch (error) {}
+ } catch (error) { }
setDragTargetId(undefined);
}}
_hover={{
@@ -301,41 +319,41 @@ const Kb = () => {
menuList={[
...(dataset.permission === PermissionTypeEnum.private
? [
- {
- label: (
-
-
- {t('permission.Set Public')}
-
- ),
- onClick: () => {
- updateDataset({
- id: dataset._id,
- permission: PermissionTypeEnum.public
- });
- }
+ {
+ label: (
+
+
+ {t('permission.Set Public')}
+
+ ),
+ onClick: () => {
+ updateDataset({
+ id: dataset._id,
+ permission: PermissionTypeEnum.public
+ });
}
- ]
+ }
+ ]
: [
- {
- label: (
-
-
- {t('permission.Set Private')}
-
- ),
- onClick: () => {
- updateDataset({
- id: dataset._id,
- permission: PermissionTypeEnum.private
- });
- }
+ {
+ label: (
+
+
+ {t('permission.Set Private')}
+
+ ),
+ onClick: () => {
+ updateDataset({
+ id: dataset._id,
+ permission: PermissionTypeEnum.private
+ });
}
- ]),
+ }
+ ]),
{
label: (