shiro前後端分離中的跳轉問題

2021-09-13 14:14:32 字數 1019 閱讀 5144

1.問題描述

因為想實現前後端分離,並且使用shiro進行許可權管理

但是碰到乙個問題就是shiro的重定向問題

1.未登入,shiro會自動重定向到 /login

2.訪問路徑無許可權,shiro會丟擲401 http錯誤

2.解決

因為我純粹只想用springboot寫後端api所以就必須kill掉這些問題

通過查資料發現在org.apache.shiro.web.filter.authz.authorizationfilter下有

onaccessdenied方法,原始碼:

protected boolean onaccessdenied(servletrequest request, servletresponse response) throws ioexception  else  else 

}return false;

}

重寫此方法即可解決重定向的問題

隨即

public class restauthorizationfilter extends permissionsauthorizationfilter  else  else 

}return false;}}

當無許可權/需要登入的的時候返回乙個json字串即可(圖中效果為object.tostring() 的效果)

3.最終效果:

歡迎關注我的部落格 小海部落格

前後端的分離

對於大部分應用,已經不需要從後端讀取html頁面或者模板,前端完全可以根據資料自行渲染頁面 模板,這樣,前後臺互動就可以簡化為資料的增刪改查。利用ajax技術,實現頁面區域性重新整理,促使了前後臺分離的可能性。那麼,如何利用前後端分離開發模式,開始乙個專案呢?1.產品文件 產品經理會先設計好整個產品...

前後端分離及使用前後端分離的原因

前後端分離指的是前端採用純html頁面,通過ajax向後台請求資料。使用前後端分離的原因,通過在後台設定引數,可以控制html在遊覽器的快取時間,遊覽器訪問頁面時不需要向後台傳送請求。減少了後台伺服器的壓力。判斷遊覽器是否取的是快取 cache control max age 3600 響應頭中有這...

Shiro之前後端分離許可權驗證返回302錯誤

shiro和spring整合,在xml檔案中配置如下部分 非全部配置 user login anon authc,perms 使用authc進行許可權控制時,若認證不通過,則shiro缺省會重定向到loginurl路徑,前端請求介面時會出現302錯誤,解決辦法是繼承formauthenticatio...