springboot集成swagger3-Unable to infer base url问题处理

今天在自己的springboot学习工程中增加对swagger接口文档组件的集成,参考了相关教程进行了操作之后,在尝试进入本地的swagger-ui/index.html页面时,却无法成功进入,如图所示:


错误配置时进入swagger页面的报错

如图所示,浏览器弹出了一个alert警告,其中的内容就是无法进入swagger主页的原因。最直接的原因就是:Unable to infer base url.

于是根据该报错提示,查找原因。

其中有一篇 Swagger3被拦截器拦截并报错Unable to infer base url或者Unable to render this definition_JSluck的博客-CSDN博客 导致该问题的原因是自己配置的拦截器拦截了swagger的其他接口。

但是因为我这个学习工程刚刚搭起来,并没有配置拦截器,所以该文章的解决办法并不适合我。

通过这篇文章(springboot整合swagger3报Unable to infer base url错误_rainyonelove的博客-CSDN博客)才算找到问题原因和解决办法:

问题原因:

配置的统一返回体影响了swagger3内置接口的返回数据结构,导致其无法正常解析,所以无法进入swagger主页。


错误的统一拦截封装配置


解决方案:

在拦截并封装统一返回体的Advice配置类中,在`@RestControllerAdvice`注解中,将需要拦截并封装统一返回体的包路径指定出来,不要使其影响到swagger接口的返回数据。如图所示:


合理的统一返回体的拦截和封装配置

这里指定了controller包下的类的请求返回体才需要拦截和封装统一返回体。

效果:


成功进入swagger主页

参考文档:

Springboot + Swagger3 集成和配置_Drifting Kern的博客-CSDN博客_springboot swagger3

springboot 集成 swagger+Knife4j_默魔的博客-CSDN博客_knife4j freemarker模板

Swagger3被拦截器拦截并报错Unable to infer base url或者Unable to render this definition_JSluck的博客-CSDN博客

springboot整合swagger3报Unable to infer base url错误_rainyonelove的博客-CSDN博客

展开阅读全文

页面更新:2024-03-01

标签:数据结构   注解   接口   错误   原因   页面   文档   工程   博客   主页

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top