将Swagger规范JSON转换为HTML文档
对于用PHP编写的一些REST API,我被要求创buildSwagger文档,因为我没有意识到向这些现有的API添加注释并创build这样的文档的简单方法,所以我现在使用这个编辑器来生成一些。
我保存了使用该编辑器创build的JSON和YAML文件,现在我需要创build最终的交互式Swagger文档(该语句听起来可能幼稚而含糊)。 有人可以让我知道如何将Swagger JSON规范文件转换为实际的Swagger文档? 我在Windows平台上,对Ant / Maven一无所知。
当我正在寻找一个工具来做这件事的时候,我对swagger-codegen
并不满意,所以我写了自己的。 看看bootprint-swagger
与swagger-codegen
比较的主要目标是提供一个简单的设置(尽pipe你需要nodejs)。 应该很容易地将样式和模板适应自己的需要,这是引导logging打印项目的核心function
请参阅GitHub上的swagger-api / swagger-codegen项目; 该项目自述展示了如何使用它来生成静态HTML。 请参阅生成静态api文档 。
如果你想查看swagger.json,你可以安装Swagger UI并运行它。 您只需将其部署到Web服务器(克隆GitHub中的repo后的dist文件夹),然后在浏览器中查看Swagger UI。 这是一个JavaScript应用程序。
检查出漂亮的赃物
它有
- 类似Swagger-Editor的右侧面板
- search/filter
- 架构折叠
- 实时反馈
- 输出为单个HTML文件
我正在看Swagger Editor,并认为它可以导出预览窗格,但事实certificate它不能。 所以我写了我自己的版本。
完全披露:我是该工具的作者。
你也可以从https://github.com/swagger-api/swagger-ui下载swagger ui,取dist文件夹,修改index.html:改变构造函数
const ui = SwaggerUIBundle({ url: ...,
成
const ui = SwaggerUIBundle({ spec: YOUR_JSON,
现在dist文件夹包含您需要的所有内容,并可以按原样分发
看看这个链接:http: //zircote.com/swagger-php/installation.html
- 下载phar文件https://github.com/zircote/swagger-php/blob/master/swagger.phar
- 安装composer phphttps://getcomposer.org/download/
- 制作composer.json
- 克隆swagger-php / library
- 克隆swagger-ui /库
- 为API创build资源和模型php类
- 执行PHP文件来生成json
- 在api-doc.json中给出json的path
- 在swagger-ui dist文件夹中的index.php中提供api-doc.json的path
如果您需要其他帮助,请随时询问。
一切都太困难或严重logging,所以我解决了这个简单的脚本swagger-yaml-to-html.py ,它的工作原理是这样的
python swagger-yaml-to-html.py < /path/to/api.yaml > doc.html
这是YAML,但修改它与JSON一起工作也是微不足道的。