diff --git a/web/app/(shareLayout)/layout.tsx b/web/app/(shareLayout)/layout.tsx index 7de5d51edb..78b8835009 100644 --- a/web/app/(shareLayout)/layout.tsx +++ b/web/app/(shareLayout)/layout.tsx @@ -19,7 +19,7 @@ const Layout: FC<{ const [isLoading, setIsLoading] = useState(true) useEffect(() => { (async () => { - if (!systemFeatures.webapp_auth.enabled) { + if (!isGlobalPending && !systemFeatures.webapp_auth.enabled) { setIsLoading(false) return } @@ -37,7 +37,7 @@ const Layout: FC<{ setWebAppAccessMode(ret?.accessMode || AccessMode.PUBLIC) setIsLoading(false) })() - }, [pathname, redirectUrl, setWebAppAccessMode]) + }, [pathname, redirectUrl, setWebAppAccessMode, isGlobalPending, systemFeatures.webapp_auth.enabled]) if (isLoading || isGlobalPending) { return
diff --git a/web/service/base.ts b/web/service/base.ts index ba398c07a6..5242f15b80 100644 --- a/web/service/base.ts +++ b/web/service/base.ts @@ -408,7 +408,7 @@ export const ssePost = async ( if (data.code === 'web_sso_auth_required') { removeAccessToken() - requiredWebSSOLogin() + requiredWebSSOLogin(data.message, 401) } if (data.code === 'unauthorized') { @@ -492,7 +492,7 @@ export const request = async(url: string, options = {}, otherOptions?: IOther } if (code === 'web_sso_auth_required') { removeAccessToken() - requiredWebSSOLogin() + requiredWebSSOLogin(message, 401) return Promise.reject(err) } if (code === 'unauthorized_and_force_logout') {