问题描述:
配置注册拦截器,以保证未登录的用户无法访问资源
程序未报错,但运行后,发现knife4j无法访问
解决方案:
出现此问题的原因是未设置静态资源映射,导致knife4j页面无法显示,注册自定义拦截器后加上以下代码即可:
//设置静态资源映射
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/doc.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/favicon.ico")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
registry.addResourceHandler("/v3/**")
.addResourceLocations("classpath:/META-INF/resources/v3/");
}
问题得到解决