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/**");
    }

  如上,问题解决。

猜你喜欢

转载自www.cnblogs.com/iceb/p/10069058.html
今日推荐