关于在springboot3.xx使用knif4j及其拦截器的拦截方法
·
原因在于使用新版本的knif4j版本后,以前的方法,拦截器的配置,配置文件,配置属性发生了巨大的变化,如果你也有这样的困扰,希望这篇可以帮助到你
如何在springboot3.xx版本使用knif4j我以及写过,这里便不在赘述了,我主要写拦截器的配置
这里时传送门http://t.csdnimg.cn/tFDS8
如果我们统一配置了拦截器不去配置的话,我们一般情况下会出现No mapping for GET /doc.html的错误,这种情况出现的原因是项目中含有继承WebMvcConfigurationSupport的类,这会导致 swagger 配置失效。
解决方法:重写WebMvcConfiguration的方法
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("doc.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
}
多说一句:我在解决这个问题是,看到网上都是在注册拦截器是排除该方法,类似于以下的书写,这并没有帮助我解决问题,不知道有没有大佬知道是为什么
public class WebMVCConfiguration extends WebMvcConfigurationSupport {
@Autowired
private JwtTokenUserInterceptor jwtTokenUserInterceptor;
protected void addInterceptors(InterceptorRegistry registry) {
log.info("开始注册自定义拦截器...");
registry.addInterceptor(jwtTokenUserInterceptor)
.addPathPatterns("/user/**")
.excludePathPatterns("/user/login")
.excludePathPatterns("/admin/register")
.excludePathPatterns("/static/**,/swagger-resources,/**webjars/**,/v3/**");
}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)