swagger 接口文档 导出(Markdown)

swagger导出markdown文档

至于swagger的搭建,这里就不赘述了。

引入依赖

<dependency>
    <groupId>io.github.swagger2markup</groupId>
    <artifactId>swagger2markup</artifactId>
    <version>1.3.3</version>
</dependency>

导出代码

public static void generateMarkdownDocsToFile() throws Exception {
    // 输出Markdown到单文件
    Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
            .withMarkupLanguage(MarkupLanguage.MARKDOWN)
            .withOutputLanguage(Language.ZH)
            .withPathsGroupedBy(GroupBy.TAGS)
            .withGeneratedExamples()
            .withoutInlineSchema()
            .build();

    Swagger2MarkupConverter.from(new URL("http://localhost:8080/v2/api-docs"))
            .withConfig(config)
            .build()
            .toFile(Paths.get("./docs/markdown/generated/all"));
}

博主使用的是 spring-boot,直接在main方法里调用了。

        try {
            generateMarkdownDocsToFile();
        } catch (Exception e) {
            e.printStackTrace();
        }

swagger 中的配置

swagger配置的时候,需要配置上url

/**
* URL
*/
@Value("${swagger.url}")
private String url;

@Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage(basePackage))
                .paths(PathSelectors.any())
                .build()
                .globalOperationParameters(setHeaderToken());
    }
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title(title)
                .description(description)
                .termsOfServiceUrl(url) // 重点是这里
                .contact(new Contact(contactName,contactUrl,contactEmail))
                .version(version)
                .build();
    }

yml中url的配置

swagger:
  url: '/v2/api-docs'
  # 其他配置....

后续

导出markdown文件后,就可以方便转word文档了。
这里给出一个在线网址:markdown在线转word

posted @ 2021-03-03 15:18  江流大海_浮萍如尘  阅读(3427)  评论(0编辑  收藏  举报