diff --git a/projects/app/src/components/core/chat/ChatContainer/ChatBox/Provider.tsx b/projects/app/src/components/core/chat/ChatContainer/ChatBox/Provider.tsx index f766ac11de..e0dce145fe 100644 --- a/projects/app/src/components/core/chat/ChatContainer/ChatBox/Provider.tsx +++ b/projects/app/src/components/core/chat/ChatContainer/ChatBox/Provider.tsx @@ -254,13 +254,22 @@ const Provider = ({ getHistoryResponseData, chatType }; + const runtimeFileSelectConfig = useMemo(() => { + if (chatType === ChatTypeEnumValue.test) { + return fileSelectConfig; + } + if (chatType === ChatTypeEnumValue.home && !props.currentQuickAppId) { + return fileSelectConfig; + } + return undefined; + }, [chatType, fileSelectConfig, props.currentQuickAppId]); return ( {children} diff --git a/projects/app/src/pages/api/core/chat/file/presignChatFilePostUrl.ts b/projects/app/src/pages/api/core/chat/file/presignChatFilePostUrl.ts index 8c63046b3f..cf5a14e593 100644 --- a/projects/app/src/pages/api/core/chat/file/presignChatFilePostUrl.ts +++ b/projects/app/src/pages/api/core/chat/file/presignChatFilePostUrl.ts @@ -12,6 +12,7 @@ import { getTeamPlanStatus } from '@fastgpt/service/support/wallet/sub/utils'; import { authApp } from '@fastgpt/service/support/permission/app/auth'; import { WritePermissionVal } from '@fastgpt/global/support/permission/constant'; import { S3ErrEnum } from '@fastgpt/global/common/error/code/s3'; +import { MongoChatSetting } from '@fastgpt/service/core/chat/setting/schema'; async function handler(req: ApiRequestProps): Promise { const { filename, appId, chatId, outLinkAuthData, fileSelectConfig } = @@ -31,12 +32,16 @@ async function handler(req: ApiRequestProps): Promise { - await authApp({ - req, - authToken: true, - appId, - per: WritePermissionVal - }); + const isHomeApp = await MongoChatSetting.exists({ teamId, appId }); + + if (!isHomeApp) { + await authApp({ + req, + authToken: true, + appId, + per: WritePermissionVal + }); + } return fileSelectConfig; })() : app?.chatConfig?.fileSelectConfig;