Springboot Swagger2 Unable to infer base url问题解决

时间:2024-03-29 14:21:22

今天汉化swagger2遇到了Unable to infer base url问题

Springboot Swagger2 Unable to infer base url问题解决

我所作的操作不过是在resources\META-INF\resources\增加了swagger-ui.html,利用本地项目文件优先级大于jar包资源的优先级重写了springfox-swagger-ui-2.9.2.jar里的swagger-ui.html

Springboot Swagger2 Unable to infer base url问题解决

于是乎就导致了Unable to infer base url问题

其真实原因是对网上的文章一知半解,我又懒得去翻jar包去复制html文件导致swagger-ui.html版本不一致的问题,springfox-swagger-ui是对swagger-ui的封装。swagger没有release2.9.2版本,springfox-swagger-ui才有2.9.2版本且封装的是swagger3.20.9,

Springboot Swagger2 Unable to infer base url问题解决

Springboot Swagger2 Unable to infer base url问题解决

其实这个html是swagger-ui:2.7.+版本的代码。在2.9.2中lang目录和众多的js已经被废弃,仍然使用老版本的html搭配新版的springfox-swagger-ui.jar肯定是会资源访问不到而出错的。以下给出2.9.2和2.7.0的对比

Springboot Swagger2 Unable to infer base url问题解决Springboot Swagger2 Unable to infer base url问题解决

springfox-swagger-ui2.9.2还没有提供国际化的方法,所以要中文汉化只能设置swagger-ui2.7.0然后复制swagger-ui2.7.0里的swagger-ui.html再进行国际化的配置。

下面附上官方源码

springfox:https://github.com/springfox/springfox/tree/master/springfox-swagger-ui

swagger:https://github.com/swagger-api/swagger-ui