程序使用Shiro提供的FormAuthenticationFilter过滤器进行登录校验时,我们并不需要自己写登录校验,Shiro会帮我们完成。
今天在进行登录页面开发时,发现点击登录后,无法完成登录校验,Debug发现程序根本不会进到FormAuthenticationFilter的executeLogin
方法,百思不得其解。到后来查找各种资料,才发现,遗漏了一项配置。
解决方法
解决方法就是:需要将loginUrl
的访问权限设置为authc
!比如我们的loginUrl为/login
,那么我们需要在Shiro的FilterChainDefinitionMap
中加入:
filterMap.put("/login", "authc");
真是细节决定成败啊!