springboot+thymeleaf刨坑——首頁加載js/css等失敗解決方法


  在使用thymeleaf加載css或js樣式,當我們進入登錄頁的時候發現,所有的樣式都是加載失敗的。原因是在新版中有這樣一個坑……:

  當我們設置了addInterceptors-注冊攔截器的時候,通常會這樣設置

 /**
     * 注冊攔截器
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        // 攔截除了登錄頁的全部請求,不攔截靜態資源
        registry.addInterceptor(new LoginHandlerInterceptor()).addPathPatterns("/**")
                .excludePathPatterns("/", "/login.html", "/user/login");
    }

  這樣可以保證未登錄的用戶無法進入首頁。那么問題就來了,我們要訪問的靜態資源的路徑沒有寫入到這里。就會被默認攔截,所以才導致加載失敗的問題。解決方法就比較簡單了,只需要把靜態資源的路徑扔進來就可以了,比如(具體路徑看你個人的,我這個是在static/css這樣的路徑下。你也可以直接/*.css來放行)

 /**
     * 注冊攔截器
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        // 攔截除了登錄頁的全部請求,不攔截靜態資源
        registry.addInterceptor(new LoginHandlerInterceptor()).addPathPatterns("/**")
                .excludePathPatterns("/", "/login.html", "/user/login","/css/**","/fonts/**","/img/**","/js/**","/media/**");
    }

  如上,問題解決。


免責聲明!

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



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