我可以在 springboot 中配置 swagger 以返回 YML 而不是 JSON 文档吗?

问题描述

我在 SpringBoot 中使用 swagger。我可以创建一个 Docket bean,当我单击 api-docs 链接时,它会在 swagger-ui 上返回 JSON OpenApi 文档。有没有办法配置 Docket bean,使其在单击链接时返回 YML 而不是 JSON:

@Bean
    public Docket helloAPI() {
        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("public-api")
                .apiInfo(apiInfo())
                .select()
                .paths(myPaths())
                .build();
    }
private Predicate<String> myPaths() {
        return or(regex("/hello/.*"),regex("/foo.*"));
    }


private ApiInfo apiInfo() {
        return new ApiInfoBuilder() ...// details omitted
}

这将在表单的 swagger-ui.html 页面生成一个链接

https://<server>:port/v2/api-doc?group=public-api

当我点击该链接时,我会以 JSON 格式获取我的 REST API 的 OpenAPI 定义。

{
"swagger": "2.0","info": {
"description": "My Hello API reference for developers","version": "1.0","title": "My Hello API","termsOfService": "http://myapi.com",<etc>...
}

我希望可以选择在 YML 中返回 API 信息,但看不到配置方法

提前致谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)