Swagger可通过符合Swagger的API动态生成漂亮的文档

Swagger UI

简介

Swagger UI 允许任何人(无论是您的开发团队还是最终用户)可视化 API 资源并与其交互,而无需任何实现逻辑。它根据您的 OpenAPI(以前称为 Swagger)规范自动生成,可视化文档使后端实现和客户端使用更加便捷。

Swagger可视化 API 资源并与其交互

概述

👉🏼 想要轻松获得开源贡献吗? 查看我们的 Good first issue 标签。

🕰️ 正在寻找旧版本的 Swagger UI? 请参阅 2.x 分支

此仓库发布了三个不同的 NPM 模块:

  • swagger-ui 是一个传统的 npm 模块,旨在用于能够解析依赖项(通过 Webpack、Browserify 等)的单页应用程序。
  • swagger-ui-dist 是一个无依赖模块,包含在服务器端项目或无法解析 npm 模块依赖项的单页应用程序中提供 Swagger UI 所需的一切。
  • swagger-ui-react 是将 Swagger UI 打包为 React 组件,用于 React 应用程序。

如果您正在构建单页应用程序,我们强烈建议您使用 swagger-ui 而不是 swagger-ui-dist,因为 swagger-ui-dist 体积较大。

如果您需要纯 HTML/JS/CSS,请下载最新版本 并将 /dist 文件夹的内容复制到您的服务器。

兼容性

OpenAPI 规范自 2010 年首次创建以来,已经历了 5 次修订。Swagger UI 与 OpenAPI 规范之间的兼容性如下:

Swagger UI Version Release Date OpenAPI Spec compatibility Notes
5.19.0 2025-02-17 2.0, 3.0.0, 3.0.1, 3.0.2, 3.0.3, 3.0.4, 3.1.0, 3.1.1 tag v5.19.0
5.0.0 2023-06-12 2.0, 3.0.0, 3.0.1, 3.0.2, 3.0.3, 3.1.0 tag v5.0.0
4.0.0 2021-11-03 2.0, 3.0.0, 3.0.1, 3.0.2, 3.0.3 tag v4.0.0
3.18.3 2018-08-03 2.0, 3.0.0, 3.0.1, 3.0.2, 3.0.3 tag v3.18.3
3.0.21 2017-07-26 2.0 tag v3.0.21
2.2.10 2017-01-04 1.1, 1.2, 2.0 tag v2.2.10
2.1.5 2016-07-20 1.1, 1.2, 2.0 tag v2.1.5
2.0.24 2014-09-12 1.1, 1.2 tag v2.0.24
1.0.13 2013-03-08 1.1, 1.2 tag v1.0.13
1.0.1 2011-10-11 1.0, 1.1 tag v1.0.1

匿名分析

SwaggerUI 使用 Scarf 收集 匿名安装分析。这些分析有助于支持此库的维护者,并且仅在安装期间运行。如需 选择退出,您可以在项目的 package.json 文件中将 scarfSettings.enabled 字段设置为 false

复制代码
// package.json
{
  // ...
  "scarfSettings": {
    "enabled": false
  }
  // ...
}

或者,您可以将环境变量“SCARF_ANALYTICS”设置为“false”,作为安装 npm 软件包的环境的一部分,例如“SCARF_ANALYTICS=false npm install”。

文档

使用

浏览器支持

Swagger UI 可在最新版本的 Chrome、Safari、Firefox 和 Edge 浏览器中运行。

许可证

SwaggerUI 采用 Apache 2.0 许可证 授权。
SwaggerUI 附带一份明确的 NOTICE 文件,
其中包含额外的法律声明和信息。

关于项目

Swagger UI 是 HTML、JavaScript 和 CSS 资产的集合,可通过符合 Swagger 的 API 动态生成漂亮的文档。
Apache-2.0
Javascript
28,384
9244
627
2011-07-16
2025-11-27

增长趋势 - stars