Swagger / OpenAPI 核心组件(2025 年最新、最清晰梳理)
目前官方已全面叫 OpenAPI Initiative,但大家仍习惯统称 Swagger。整个生态由以下 6 大核心组件 组成,记住这 6 个名字就基本掌握了 Swagger 全貌。
| 组件名称 | 官方现用名称 | 主要作用 | 典型使用场景 / 代表工具 |
|---|---|---|---|
| 1. OpenAPI Specification (OAS) | OpenAPI 规范 | API 的“合同”标准(YAML 或 JSON 文件) | 定义接口路径、参数、请求体、响应、认证方式等 |
| 2. Swagger UI | Swagger UI | 把 OpenAPI 文件渲染成美观、可在线调用的文档 | 大家最熟悉的那个绿色交互页面 |
| 3. Swagger Editor | Swagger Editor | 在线实时编写 + 实时预览 OpenAPI 定义 | https://editor.swagger.io(设计优先必备) |
| 4. Swagger Codegen → 已被取代 | → OpenAPI Generator | 根据 OpenAPI 文件生成多语言客户端 & 服务端代码 | 支持 50+ 语言(Java、TypeScript、Go、Python 等) |
| 5. Swagger Core | 各种语言的注解库 | 在代码中写注解 → 运行时自动生成 OpenAPI 文件 | springdoc-openapi(Java) Swashbuckle(.NET) @nestjs/swagger 等 |
| 6. Redoc | Redoc | 另一款比 Swagger UI 更漂亮的文档渲染工具 | 很多公司对外文档用 Redoc,内部开发用 Swagger UI |
一图记住关系(2025 主流工作流)
方式A:代码优先(最常见)
源码 + 注解 (Swagger Core)
↓
springdoc / Swashbuckle 等运行时生成 OpenAPI JSON/YAML
↓
Swagger UI / Redoc 渲染成文档页面 ←→ 前端/测试直接在线调用
方式B:设计优先(推荐大团队)
先用 Swagger Editor 写 OpenAPI YAML
↓
OpenAPI Generator 生成服务端骨架 + 客户端 SDK
↓
开发者补全业务代码
↓
最终还是用 Swagger UI / Redoc 展示
2025 年最该记住的 6 个官网链接(直接收藏)
- 规范总站(所有版本)
https://spec.openapis.org - 在线编辑器(每天都要用)
https://editor.swagger.io - Swagger UI(文档页面)
https://swagger.io/tools/swagger-ui - Redoc(更漂亮的文档)
https://redocly.com/redoc - OpenAPI Generator(生成代码)
https://openapi-generator.tech - OpenAPI 官方工具列表(找任何语言实现)
https://openapi.tools
记住了上面 6 个组件 + 这 6 个链接,你就已经站在了 Swagger/OpenAPI 生态的 95% 高度,后续所有学习都是在这张图上的延伸。