From 1f2add4b6bece17ed26a4816f447a4e00f22192d Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期三, 19 六月 2024 10:11:32 +0800 Subject: [PATCH] update 更换三方回调方案 --- src/views/login.vue | 2 +- src/layout/components/SocialCallback/index.vue | 18 +++++++++++------- src/views/system/user/profile/thirdParty.vue | 2 +- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/layout/components/SocialCallback/index.vue b/src/layout/components/SocialCallback/index.vue index 17a7631..723d593 100644 --- a/src/layout/components/SocialCallback/index.vue +++ b/src/layout/components/SocialCallback/index.vue @@ -18,22 +18,18 @@ const state = route.query.state as string; const source = route.query.source as string; const tenantId = route.query.tenantId as string ? route.query.tenantId as string : '000000'; +const domain = route.query.domain as string; const processResponse = async (res: any) => { if (res.code !== 200) { throw new Error(res.msg); } - if (res.data !== null && res.data.access_token !== null) { + if (res.data !== null) { setToken(res.data.access_token); } ElMessage.success(res.msg); setTimeout(() => { - if (res.data !== null && res.data.domain !== null) { - let protocol = window.location.protocol === 'https:' ? 'https://' : 'http://'; - location.href = protocol + res.data.domain + import.meta.env.VITE_APP_CONTEXT_PATH + 'index'; - } else { - location.href = import.meta.env.VITE_APP_CONTEXT_PATH + 'index'; - } + location.href = import.meta.env.VITE_APP_CONTEXT_PATH + 'index'; }, 2000); }; @@ -65,6 +61,14 @@ }; const init = async () => { + // 濡傛灉鍩熷悕涓嶇浉绛� 鍒欓噸瀹氬悜澶勭悊 + let host = window.location.host; + if (domain !== host) { + let urlFull = new URL(window.location.href); + urlFull.hostname = domain; + window.location.href = urlFull.toString(); + } + const data: LoginData = { socialCode: code, socialState: state, diff --git a/src/views/login.vue b/src/views/login.vue index 0bb9a3f..02c7d77 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -194,7 +194,7 @@ authBinding(type).then((res: any) => { if (res.code === HttpStatus.SUCCESS) { // 鑾峰彇鎺堟潈鍦板潃璺宠浆 - window.location.href = res.data + '&tenantId=' + loginForm.value.tenantId; + window.location.href = res.data + '&tenantId=' + loginForm.value.tenantId + '&domain=' + window.location.host; } else { ElMessage.error(res.msg); } diff --git a/src/views/system/user/profile/thirdParty.vue b/src/views/system/user/profile/thirdParty.vue index 3d489b4..ad090c4 100644 --- a/src/views/system/user/profile/thirdParty.vue +++ b/src/views/system/user/profile/thirdParty.vue @@ -86,7 +86,7 @@ const authUrl = (source: string) => { authBinding(source).then((res: any) => { if (res.code === 200) { - window.location.href = res.data + '&tenantId=' + useUserStore().tenantId; + window.location.href = res.data + '&tenantId=' + useUserStore().tenantId + '&domain=' + window.location.host; } else { proxy?.$modal.msgError(res.msg); } -- Gitblit v1.9.3