如何为托管的 Swagger API 生成实时 Swagger API 页面?
How do you generate a live Swagger API page for your hosted Swagger API?
我使用 Swagger 创建了一个 API。
我的客户将能够像
一样调用我的服务
https://theservice.com/data/items/category1/12345
这很好,工作正常。
但是,我想要一个页面,他们可以在其中查看所有可用的 API 调用,类似于 Swagger 在其 SwaggerEditor app 上生成它的方式。例如,通过访问 https://theservice.com/index.html
,我希望他们看到 API 文档。
是否有可能(在 Swagger 中)在实时系统上执行此操作(不仅仅是在本地使用我已经知道的 swagger project edit
)?
如果是,怎么做?
我想你要找的是 swagger-ui and here is an example: http://petstore.swagger.io/
如您所见,它不仅列出了所有可用的 API 端点,还允许访问者(开发人员)直接在网页中试用。
听起来您正在使用 Swagger Editor 来描述您的 API,然后使用内置生成器生成一些脚手架代码。根据您的标签,我假设这是 node.js 代码。您需要将自己的逻辑添加到生成的代码中才能完成此 API 实施(如果您尚未这样做的话)。
如果这是正确的,那么您正在寻找的交互式 Swagger-UI 文档应该在您生成的 API 中可用,位于 /docs
端点,相对于基础 URL 您的 运行 服务。
生成的 node.js 项目包括您在编辑器中创建的 Swagger 规范,并使用 Swagger-Tools 执行运行时魔术。除其他事项外,Swagger-Tools 会自动将您的 Swagger 规范连接到 /docs
端点,并根据您的 Swagger 规范中提供的信息管理将请求路由到生成的控制器。
请注意,/docs
页面的外观和行为与您在 Swagger 编辑器中看到的文档小部件略有不同。您的应用程序中使用的那个 Swagger-UI, which is the runtime component for documentation, with interactive sandbox testing. Swagger-Editor 有它自己的内置文档 UI,目前没有打包以供在 Swagger-Editor 之外使用。
如果您已经实现了一个 API,独立于 Swagger 编辑器和代码生成器,您仍然可以生成 node.js 代码以查看如何将 Swagger-Tools 合并到您现有的 API 实施。或者,作为 wing328 suggests, take a look at Swagger-UI 查看如何添加您自己的文档页面。
我使用 Swagger 创建了一个 API。
我的客户将能够像
一样调用我的服务https://theservice.com/data/items/category1/12345
这很好,工作正常。
但是,我想要一个页面,他们可以在其中查看所有可用的 API 调用,类似于 Swagger 在其 SwaggerEditor app 上生成它的方式。例如,通过访问 https://theservice.com/index.html
,我希望他们看到 API 文档。
是否有可能(在 Swagger 中)在实时系统上执行此操作(不仅仅是在本地使用我已经知道的 swagger project edit
)?
如果是,怎么做?
我想你要找的是 swagger-ui and here is an example: http://petstore.swagger.io/
如您所见,它不仅列出了所有可用的 API 端点,还允许访问者(开发人员)直接在网页中试用。
听起来您正在使用 Swagger Editor 来描述您的 API,然后使用内置生成器生成一些脚手架代码。根据您的标签,我假设这是 node.js 代码。您需要将自己的逻辑添加到生成的代码中才能完成此 API 实施(如果您尚未这样做的话)。
如果这是正确的,那么您正在寻找的交互式 Swagger-UI 文档应该在您生成的 API 中可用,位于 /docs
端点,相对于基础 URL 您的 运行 服务。
生成的 node.js 项目包括您在编辑器中创建的 Swagger 规范,并使用 Swagger-Tools 执行运行时魔术。除其他事项外,Swagger-Tools 会自动将您的 Swagger 规范连接到 /docs
端点,并根据您的 Swagger 规范中提供的信息管理将请求路由到生成的控制器。
请注意,/docs
页面的外观和行为与您在 Swagger 编辑器中看到的文档小部件略有不同。您的应用程序中使用的那个 Swagger-UI, which is the runtime component for documentation, with interactive sandbox testing. Swagger-Editor 有它自己的内置文档 UI,目前没有打包以供在 Swagger-Editor 之外使用。
如果您已经实现了一个 API,独立于 Swagger 编辑器和代码生成器,您仍然可以生成 node.js 代码以查看如何将 Swagger-Tools 合并到您现有的 API 实施。或者,作为 wing328 suggests, take a look at Swagger-UI 查看如何添加您自己的文档页面。