如何从swagger文档生成静态html文件?

时间:2016-11-03 16:50:40

标签: linux swagger api-doc html-generation

我创建了一个带有yaml文件的swagger文档:

 api/swagger/swagger.yaml

现在我想分享一个静态的html文档及其定义,但在swagger project上已经说过,他们根本不打算支持html生成。

如何从swagger项目中生成静态html文件?

4 个答案:

答案 0 :(得分:7)

我能想到的最简单方法是使用Swagger Editor

  1. 转到:https://editor.swagger.io
  2. 点击"文件"在顶部菜单栏中,然后选择"导入文件"
  3. 导入后,点击"生成客户端"在顶部菜单栏中,然后选择" HTML"或" HTML2"生成静态HTML文档
  4. editor.swagger.io使用generator.swagger.io生成API客户端,服务器存根和文档,而generator.swagger.io由开源项目Swagger Codegen提供支持。

答案 1 :(得分:3)

swagger2markup-cli可以生成静态adoc文件。

确保已安装Java运行时。 (我正在使用`Java(TM)SE运行时环境(版本1.8.0_111-b14))。

你拿到了jar:

 wget https://jcenter.bintray.com/io/github/swagger2markup/swagger2markup-cli/1.1.0/swagger2markup-cli-1.1.0.jar

您可以通过以下方式生成静态adoc

java -jar ~/your/path/swagger2markup-cli-1.1.0.jar  help convert  -i api/swagger/swagger.yaml --outputFile static-swagger

然后可以通过asciidoctor将该adoc文件转换为html文件:

asciidoctor *.adoc

您可能需要安装它,因为我正在使用Ubuntu,我可以通过:

sudo apt-get -qq install asciidoctor

答案 2 :(得分:1)

  1. 下载https://github.com/swagger-api/swagger-ui-感兴趣的文件夹是“ dist
  2. 将您的Swagger JSON复制到dist文件夹中
  3. 打开index.html,然后将文件底部标记内的URL值更改为./swagger.json(或您所说的sagger json所用的名称)(请参见here
  4. 在线托管! (或启动本地服务器以查看输出)。

答案 3 :(得分:0)

您是否要导出它以从不同的服务创建单个文档?如果是,则可以选择https://github.com/varghgeorge/microservices-single-swagger。这个简单的springboot微服务将基于YAML配置在一个位置显示您所有的swagger文档(来自不同服务器)。