SpringBoot 2.7.x 集成knife4j-openapi3 访问doc.html出现 Uncaught SyntaxError:Unexpected token ‘:‘

SpringBoot 2.7.x 集成knife4j-openapi3 访问doc.html出现 Uncaught SyntaxError:Unexpected token ':'

  • 废话不多说,上号
    • 出现的问题
    • 处理的问题
    • 修正成功后代码
    • 至此就完结了

废话不多说,上号

出现的问题

网关访问doc.html 后出现的错误,但是访问swagger-ui.html 是正常的所以这就纳闷了!!!为什么出现这个问题,我也没去深究。
在这里插入图片描述

处理的问题

我用knife4j-openapi3-spring-boot-starter 4.1.0-4.5.0 对应 springdoc的1.6.x或者更高,我的项目使用springdoc 1.7.0打开doc.html 一直出现错误,而knife4j-openapi3-spring-boot-starter 引入的springdoc是1.7.0。
出现错误 可能和这个有关:针对4.1.0版本接口响应Base64编码的情况
https://github.com/springdoc/springdoc-openapi/issues/2143
导致一直没有成功,大家可以参考下上面两个链接。我这里的处理方式是直接剔除相关springdoc高的版本号,然后手动引入低版本springdoc 的jar包。

修正成功后代码

knife4j-openapi3-spring-boot-starter 4.4.0
手动引入
springdoc-openapi-webmvc-core 1.6.9
排除knife4j-openapi3-spring-boot-starter 高版本的springdoc 1.7.0 的版本即可。

<dependency>
    <groupId>org.springdoc</groupId>
    <artifactId>springdoc-openapi-webmvc-core</artifactId>
    <version>1.6.9</version>
</dependency>
<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-openapi3-spring-boot-starter</artifactId>
    <version>4.4.0</version>
    <exclusions>
        <exclusion>
            <groupId>org.springdoc</groupId>
            <artifactId>springdoc-openapi-ui</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.springdoc</groupId>
            <artifactId>springdoc-openapi-common</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.springdoc</groupId>
            <artifactId>springdoc-openapi-webflux-core</artifactId>
        </exclusion>
    </exclusions>
</dependency>

至此就完结了

如果有用可以分享给有用的人 ?( ′???` )比心