fix: 单点登录优化

This commit is contained in:
Gsh
2025-06-27 14:23:06 +08:00
parent 12eb6c73c3
commit 96e275efa6

View File

@@ -67,14 +67,9 @@ function handleThirdPartyLogin() {
let isHandled = false; let isHandled = false;
const messageHandler = async (event: any) => { const messageHandler = async (event: any) => {
// 验证来源 + 防重复 if (event.origin === new URL(SSO_SEVER_URL).origin
if ( || event.data.type === 'SSO_LOGIN_SUCCESS'
event.origin !== new URL(SSO_SEVER_URL).origin || !isHandled) {
|| event.data.type !== 'SSO_LOGIN_SUCCESS'
|| isHandled
) {
return;
}
isHandled = true; isHandled = true;
try { try {
const { token } = event.data; const { token } = event.data;
@@ -100,6 +95,10 @@ function handleThirdPartyLogin() {
console.error('登录处理失败:', error); console.error('登录处理失败:', error);
ElMessage.error('登录失败'); ElMessage.error('登录失败');
} }
}
else {
console.log('2222-', event);
}
}; };
// 先移除旧监听,再添加新监听 // 先移除旧监听,再添加新监听