diff --git a/modules/core/src/main/java/com/jeesite/common/shiro/filter/FormAuthenticationFilter.java b/modules/core/src/main/java/com/jeesite/common/shiro/filter/FormAuthenticationFilter.java index 4ed0f6b9..3c89fc47 100644 --- a/modules/core/src/main/java/com/jeesite/common/shiro/filter/FormAuthenticationFilter.java +++ b/modules/core/src/main/java/com/jeesite/common/shiro/filter/FormAuthenticationFilter.java @@ -54,10 +54,11 @@ public class FormAuthenticationFilter extends org.apache.shiro.web.filter.authc. public static final String MESSAGE_PARAM = "message"; // 登录返回消息 public static final String REMEMBER_USERCODE_PARAM = "rememberUserCode"; // 记住用户名 public static final String EXCEPTION_ATTRIBUTE_NAME = "exception"; // 异常类属性名 + public static final String LOGIN_PARAM = "__login"; // 支持GET方式登录的参数 private static final Logger logger = LoggerFactory.getLogger(FormAuthenticationFilter.class); private static FormAuthenticationFilter instance; - + private BaseAuthorizingRealm authorizingRealm; private Cookie rememberUserCodeCookie; // 记住用户名Cookie @@ -228,7 +229,7 @@ public class FormAuthenticationFilter extends org.apache.shiro.web.filter.authc. */ @Override protected boolean isLoginRequest(ServletRequest request, ServletResponse response) { - boolean isLogin = WebUtils.isTrue(request, "__login"); + boolean isLogin = WebUtils.isTrue(request, LOGIN_PARAM); return super.isLoginRequest(request, response) || isLogin; } @@ -237,7 +238,7 @@ public class FormAuthenticationFilter extends org.apache.shiro.web.filter.authc. */ @Override protected boolean isLoginSubmission(ServletRequest request, ServletResponse response) { - boolean isLogin = WebUtils.isTrue(request, "__login"); + boolean isLogin = WebUtils.isTrue(request, LOGIN_PARAM); return super.isLoginSubmission(request, response) || isLogin; } diff --git a/modules/core/src/main/java/com/jeesite/modules/sys/web/LoginController.java b/modules/core/src/main/java/com/jeesite/modules/sys/web/LoginController.java index 6706e8ef..473e806b 100644 --- a/modules/core/src/main/java/com/jeesite/modules/sys/web/LoginController.java +++ b/modules/core/src/main/java/com/jeesite/modules/sys/web/LoginController.java @@ -24,6 +24,7 @@ import com.fasterxml.jackson.annotation.JsonView; import com.jeesite.common.config.Global; import com.jeesite.common.lang.StringUtils; import com.jeesite.common.shiro.filter.FormAuthenticationFilter; +import com.jeesite.common.shiro.realm.BaseAuthorizingRealm; import com.jeesite.common.shiro.realm.LoginInfo; import com.jeesite.common.web.BaseController; import com.jeesite.common.web.CookieUtils; @@ -66,7 +67,7 @@ public class LoginController extends BaseController{ } // 如果是登录操作,跳转到此,则认为是登录失败(支持GET登录时传递__login=true参数) - if (WebUtils.isTrue(request, "__login")){ + if (WebUtils.isTrue(request, BaseAuthorizingRealm.IS_LOGIN_OPER)){ return loginFailure(request, response, model); } @@ -182,10 +183,10 @@ public class LoginController extends BaseController{ Session session = UserUtils.getSession(); // 是否是登录操作 - boolean isLogin = "true".equals(session.getAttribute("__login")); + boolean isLogin = Global.TRUE.equals(session.getAttribute(BaseAuthorizingRealm.IS_LOGIN_OPER)); if (isLogin){ // 获取后接着清除,防止下次获取仍然认为是登录状态 - session.removeAttribute("__login"); + session.removeAttribute(BaseAuthorizingRealm.IS_LOGIN_OPER); // 设置共享SessionId的Cookie值(第三方系统使用) String cookieName = Global.getProperty("session.shareSessionIdCookieName"); if (StringUtils.isNotBlank(cookieName)){