springboot集成shiro 前后端分離 統一處理shiro異常


在前后端分離的情況下,shiro一些權限異常處理會返回401之類的結果,這種結果不好統一管理。我們希望的結果是統一管理,所有情況都受我們控制

就算權限驗證失敗,我們也希望返回200,並且返回我們定義的信息之類的。

默認的攔截器情況

public enum DefaultFilter {
    anon(AnonymousFilter.class),
    authc(FormAuthenticationFilter.class),
    authcBasic(BasicHttpAuthenticationFilter.class),
    logout(LogoutFilter.class),
    noSessionCreation(NoSessionCreationFilter.class),
    perms(PermissionsAuthorizationFilter.class),
    port(PortFilter.class),
    rest(HttpMethodPermissionFilter.class),
    roles(RolesAuthorizationFilter.class),
    ssl(SslFilter.class),
    user(UserFilter.class);

分成2種情況 1.未登錄或者登錄失效  2.權限不足 

為了方便 在perms之前加authc這樣攔截器會先走authc,這樣不需要考慮太多情況


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM