shiro用authc配置後登陸成功後不能跳轉到index頁面

    這兩天發現一個問題,如題,嘗試了不少方法,都無法解決,真是很鬱悶。web

最後看源碼才知道,個人配置以下。原意是從/api/user/login登陸成功後,跳轉到/index,可是怎麼都不能跳轉到/index。spring

原來authc攔截器(即FormAuthenticationFilter),驗證成功後只會跳轉到最開始你進入的頁面,由於我是從/api/user/login頁面進入登陸,因此只會跳轉到/api/user/login。apache

要想跳轉到/index頁面,只有最開始從/index頁面進入,後臺會重定向到/api/user/login頁面,驗證成功後,才返回/index頁面。api

<!-- Shiro的Web過濾器 ,id要與web.xml一致 --> 
<bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean"> 
<property name="securityManager" ref="securityManager" /> 
<property name="loginUrl" value="/api/user/login" /> 
<property name="successUrl" value="/index" /> 
<property name="unauthorizedUrl" value="/unauthorized" /> 
<property name="filters"> 
<map> 
  <entry key="authc" value-ref="formAuthenticationFilter" /> 
</map> 
</property> 
<property name="filterChainDefinitions"> 
  <value> 
    /static/** = anon 
    /api/user/login = authc 
    /api/user/logout = logout 
    /api/user/register* = anon 
    /unauthorized = anon 
    /** = user 
  </value> 
</property> 
</bean>
相關文章
相關標籤/搜索