求大神解答,心態已經崩了。。。
前后端分離,springBoot 整合 Shiro 后,如果使用瀏覽器地址欄訪問介面可以正常認證和授權,但是如果使用Ajax登錄(doLogin介面)后再訪問其他介面,會直接跳轉到登錄頁(toLogin介面),而且中間也沒有經過授權。
設定的攔截規則是:除了登錄介面外都需要認證
怎么辦,實在不知道哪里有問題
@Bean
public ShiroFilterFactoryBean shiroFilterFactoryBean(SecurityManager securityManager) {
ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
shiroFilterFactoryBean.setSecurityManager(securityManager);
log.info("--------Shiro攔截器工廠類注入成功");
//添加Shiro內置過濾器
/*
* 常見的過濾器:
* anon:無需認證(登錄)可以訪問
* authc:必須認證才可以訪問
* user:如果使用rememberMe的功能可以訪問
* perms:該資源必須得到資源權限才可以訪問
* roles:該資源必須得到角色權限才可以訪問
* */
Map<String, String> map = new LinkedHashMap<>();
map.put("/loginController/doLogin", "anon");
map.put("/**", "authc");
shiroFilterFactoryBean.setLoginUrl("/loginController/toLogin");
shiroFilterFactoryBean.setFilterChainDefinitionMap(map);
return shiroFilterFactoryBean;
}
uj5u.com熱心網友回復:
end user和API不應該用同樣的登陸方式的吧?轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/39612.html
標籤:Java EE
下一篇:java實參跟行參
