前提
登錄處理URL:/login
攔截器配置:filterChainDefinitionMap.put("/login", "anon");
無效原因
/login被anon攔截器攔截,根本不會執行登錄並跳轉到successUrl頁
解決方法
換個攔截器攔截,比如authc,當然也可自定義實現。
以authc爲例
1. 攔截器爲authc
filterChainDefinitionMap.put("/login", "authc");
2. 設置登錄頁爲/login(登錄展示頁和登錄處理頁URL一致,但是http method不一樣)
shiroFilterFactoryBean.setLoginUrl("/login");
3. 登錄處理URL(/login)一定要爲POST請求
4. authc攔截器登錄成功後將跳轉到successUrl頁