登录不会走自定义的FormAuthenticationFilter及其onLoginSuccess原因
登录不会走自定义的FormAuthenticationFilter及其onLoginSuccess原因
1,在自定义的类中loginUrl不是表单的提交路劲,这个提交路劲需要authc(需要访问数据库),配置好了直接调用框架的登录方法,回调自定义的onLoginSuccess之类
2,页面提交的input name 不是框架中的username,password同名
3,自定义的获取方法应该用request.getparameter("");不应该用getAttribute();
4,FormAuthenticationFilter中的loginUrl和ShiroFilterFactoryBean(loginUrl登录界面)不同,
5,如果自定义了登录方法,最好参照框架中的AuthenticatingFilter
Subject e = this.getSubject(request, response);
e.login(token);
return this.onLoginSuccess(token, e, request, response);///2自定义中也加这个
如果自定义的登录url和框架中的登录方法配置的loginUrl一致优先框架,不成功才再走自定义的,成功不会走
直接浏览器请求提交地址才走过这个定义的登录滤器,没有配置登录提交的form路径,也就是用自定义的