是否有可能获得网站的 swagger 文档的离线版本?

use*_*635 7 .net c# asp.net-web-api swagger asp.net-web-api2

localhost/swagger 正在按预期加载,但 remoteserver/swagger 出现问题。我可以保存生成的 swagger 文档的离线副本吗?在尝试调试远程问题时,我可以将 zip 文件发送给几个用户。

Hel*_*len 9

如果您由于某种原因无法自己托管 Swagger UI,则有很多方法可以向您的用户提供 API 文档。所有建议都假设您有一个 OpenAPI (Swagger) 定义,即 YAML/JSON 文件。如果您不知道 YAML/JSON 文件的位置,您可以从 Swagger UI 网页 推断它。

没有特定的顺序:

  1. 将 YAML/JSON 文件发送给您的用户并告诉他们在http://editor.swagger.io中加载它以预览 API 文档。

  2. 将您的 OpenAPI 定义文件导入SwaggerHub并在那里托管您的 API 文档。
    披露:SwaggerHub 是由我工作的公司制作的。

  3. 将您的 OpenAPI 定义文件放在任何公共 Web 服务器上,例如在 GitHub 上创建一个要点。然后您可以通过将其加载到 Swagger UI 公共演示中来呈现 API 文档,如下所示:

     http://petstore.swagger.io?url=YOUR_YAML_or_JSON_URL
    
    Run Code Online (Sandbox Code Playgroud)

如果使用要点,请确保指定原始要点链接(https://gist.githubusercontent.com/...)。如果使用其他主机,请确保托管服务器支持CORS。

  1. 如此处所述,将 Swagger UI 和您的 OpenAPI 定义“打包”到一个无依赖关系的文件中,并将生成的文件发送给您的用户。

  2. 生成静态 HTML 文档(不是 Swagger UI,而是没有“试用”的静态 HTML 页面):将您的 OpenAPI 定义加载到http://editor.swagger.io,然后选择菜单项Generate Client > html or html2 or dynamic -html .

“生成客户端”功能使用Swagger Codegen,因此您还可以使用 Codegen 的 CLI 版本生成所需的输出。

  1. 想要PDF?可以将 OpenAPI 定义转换为 PDF。

也可以看看: