如何在 Deno 中使用 Swagger UI 显示 API 文档?

阅读时长 5 分钟读完

Swagger UI 是一个流行的工具,它可以将 OpenAPI 规范格式的 API 文档转换为交互式的可视化文档。Swagger UI 的强大功能和易于使用的特性使其成为 Web API 开发者的重要工具。

Deno 是一种全新的 JavaScript 运行时,它融合了现代浏览器和 Node.js 的优点。Deno 的出现可以为开发者提供更好的开发体验和原生支持 TypeScript 等特性。

在本篇文章中,我们将介绍如何在 Deno 中使用 Swagger UI 显示 API 文档。

安装 Swagger UI

在使用 Swagger UI 之前,我们需要将其安装到项目中。使用以下命令:

这个命令将会基于 import map 方式去安装 Swagger UI。在 Deno v1.9.0 及以后的版本中,import map 已成为了一个较为推荐的安装方式。安装完成后,我们可以通过以下命令来启动 Swagger UI:

其中,--unstable 参数是用于使我们引用 Deno 的 experimental API,需要在 deno 核心团队比较推荐的场合下才可以使用。

导入 API 文档

Swagger UI 需要一个 Open API 格式的文档。如果没有一个这样的文档,可以从本地文件系统或网络上导入。我们可以使用以下代码将 API 文档导入 Deno:

-- -------------------- ---- -------
------ - ----- - ---- -----------------------------------------

----- ------ - ---------------------------------------
----- -------- - ----- --------------

-- ------------- -
    ----- ---- - ----- ----------------
    ----- ------ - ------------
    --------------------
- ---- -
    --------------------- -- ---- --- ----- ------------------ -------------------------
-

在这个例子中,我们从网络上读取 swagger.yaml 文档,并使用 yaml 解析器将其解析为对象。

如果你使用的是 JSON 格式的 API 文档,导入 API 文档的步骤也很相似。

显示 API 文档

在导入 API 文档后,我们需要将其显示在 Swagger UI 中。我们可以使用以下代码创建 Swagger UI:

-- -------------------- ---- -------
------ - ----------- - ---- ------------------------------------------
------ - ----------- - ---- ---------------------------------
------ - --------- - ---- -----------

----- --- - --- --------------

---------------------

---------------------------------

-------------------- -- -- ------- -- ------------------------

----- ------------ --------- ------------ ----- ---- ---

在这个例子中,我们使用 oak 框架来创建一个应用,并使用 serve_static 模块将 ./public 目录下的静态文件提供给用户。

我们还需要编写一个自定义中间件来创建并渲染 Swagger UI。该中间件在代码中引用上文提到的 SwaggerUI 接口。该接口可以接受一个 API 文档对象,并返回一个中间件,该中间件将创建和呈现 Swagger UI。

结论

在本篇文章中,我们介绍了如何在 Deno 中使用 Swagger UI 显示 API 文档。我们学习了如何安装 Swagger UI,将 API 文档导入 Deno,并将其呈现在 Swagger UI 中。

Swagger UI 是一个强大的工具,可以提高 Web API 开发人员的工作效率和开发速度。Deno 作为新的 JavaScript 运行时,也提供了在 Deno 中集成 Swagger UI 的方法。

原文链接:How to use Swagger UI to Display API Documentation in Deno

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/66f22d8ea44b36ee576457ae

纠错
反馈