diff --git a/src/main/java/com/dsideal/sso/Controller/WebLoginController.java b/src/main/java/com/dsideal/sso/Controller/WebLoginController.java index 3b80461..8e5f54e 100644 --- a/src/main/java/com/dsideal/sso/Controller/WebLoginController.java +++ b/src/main/java/com/dsideal/sso/Controller/WebLoginController.java @@ -36,17 +36,18 @@ public class WebLoginController extends Controller { /** * 接入统一认证的系统,跳转到统一认证的地址 */ - public void login(String redirect_url) { + public void login() { Map loginMap = SsoLoginHelper.loginCheck(getRequest()); + String redirectUrl = getRequest().getParameter("redirect_url"); if (loginMap != null) { - if (!redirect_url.contains("?")) { - redirect301(redirect_url + "?" + PropKit.get("sso.sessionid") + "=" + loginMap.get("session_id").toString()); + if (!redirectUrl.contains("?")) { + redirect301(redirectUrl + "?" + PropKit.get("sso.sessionid") + "=" + loginMap.get("session_id").toString()); } else { - redirect301(redirect_url + "&" + PropKit.get("sso.sessionid") + "=" + loginMap.get("session_id").toString()); + redirect301(redirectUrl + "&" + PropKit.get("sso.sessionid") + "=" + loginMap.get("session_id").toString()); } } else { - redirect_url = CommonUtil.handleRedirectUrlParas(redirect_url); - redirect("/html/login.html?redirect_url=" + redirect_url); + redirectUrl = CommonUtil.handleRedirectUrlParas(redirectUrl); + redirect("/html/login.html?redirect_url=" + redirectUrl); } } diff --git a/target/classes/com/dsideal/sso/Controller/WebLoginController.class b/target/classes/com/dsideal/sso/Controller/WebLoginController.class index 36aa3be..d3f349a 100644 Binary files a/target/classes/com/dsideal/sso/Controller/WebLoginController.class and b/target/classes/com/dsideal/sso/Controller/WebLoginController.class differ diff --git a/target/classes/com/dsideal/sso/Util/SsoLoginHelper.class b/target/classes/com/dsideal/sso/Util/SsoLoginHelper.class index d494d68..eae5b44 100644 Binary files a/target/classes/com/dsideal/sso/Util/SsoLoginHelper.class and b/target/classes/com/dsideal/sso/Util/SsoLoginHelper.class differ diff --git a/target/classes/com/dsideal/sso/Util/SsoLoginStore.class b/target/classes/com/dsideal/sso/Util/SsoLoginStore.class index 6c87215..e8f9a02 100644 Binary files a/target/classes/com/dsideal/sso/Util/SsoLoginStore.class and b/target/classes/com/dsideal/sso/Util/SsoLoginStore.class differ