关于SpringBoot2.x版本的对于拦截静态资源的出现的问题

我们先来看下SpringBoot1.5.9版本的关于静态资源拦截处理

当我们自己配置的拦截器不拦截静态资源的配置时

@Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new MyInterceptor()).addPathPatterns("/**")
                .excludePathPatterns("/index.html","/","/user/login");
        //,"/asserts/**","/webjars/**"
    }

页面会正常显示,这是因为,在SpringBoot2.0之前的版本,SpringBoot自动配置的拦截器,对静态资源能正常访问,我们自己配置的时候可以不用管,就能正常访问。

接下来我们看下SpringBoot2.2.5版本的底层设置拦截器资源的时候

当我们正常写上面的那个代码的时候,会导致页面样式丢失,主要原因就是
在我们配置拦截器的时候没有将"/asserts/","/webjars/"里的资源排除在外,而springboot2.0以后的版本不会自动管理静态资源映射的配置,所以我们访问不到静态页面
在这里插入图片描述
当我们自己配置的拦截器将静态资源排除在外之后,页面正常显示

@Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new MyInterceptor()).addPathPatterns("/**")
                .excludePathPatterns("/index.html","/","/user/login","/asserts/**","/webjars/**");
    }

猜你喜欢

转载自blog.csdn.net/MarkusZhang/article/details/105137062