在使用thymeleaf加載css或js樣式,當咱們進入登陸頁的時候發現,全部的樣式都是加載失敗的。緣由是在新版中有這樣一個坑……:css
當咱們設置了addInterceptors-註冊攔截器的時候,一般會這樣設置html
/** * 註冊攔截器 */ @Override public void addInterceptors(InterceptorRegistry registry) { // 攔截除了登陸頁的所有請求,不攔截靜態資源 registry.addInterceptor(new LoginHandlerInterceptor()).addPathPatterns("/**") .excludePathPatterns("/", "/login.html", "/user/login"); }
這樣能夠保證未登陸的用戶沒法進入首頁。那麼問題就來了,咱們要訪問的靜態資源的路徑沒有寫入到這裏。就會被默認攔截,因此才致使加載失敗的問題。解決方法就比較簡單了,只須要把靜態資源的路徑扔進來就能夠了,好比(具體路徑看你我的的,我這個是在static/css這樣的路徑下。你也能夠直接/*.css來放行)ide
/** * 註冊攔截器 */ @Override public void addInterceptors(InterceptorRegistry registry) { // 攔截除了登陸頁的所有請求,不攔截靜態資源 registry.addInterceptor(new LoginHandlerInterceptor()).addPathPatterns("/**") .excludePathPatterns("/", "/login.html", "/user/login","/css/**","/fonts/**","/img/**","/js/**","/media/**"); }
如上,問題解決。spa