温馨提示×

Swagger文档Ubuntu上能生成吗

小樊
47
2025-11-02 06:45:16
栏目: 智能运维

Swagger文档可以在Ubuntu系统上生成,以下是几种常见方法及操作步骤:

1. 使用Swagger Editor(在线/本地)

Swagger Editor是Swagger官方提供的可视化工具,支持编写、预览和测试OpenAPI规范(YAML/JSON格式)。

  • 安装步骤
    • 通过npm全局安装(需提前安装Node.js和npm):sudo npm install -g swagger-ui
    • 或直接访问Swagger Editor官网在线使用。
  • 生成文档
    在编辑器中编写API规范(如定义路径、请求方法、参数、响应等),保存为swagger.yamlswagger.json文件;
    点击“Try it out”可在线测试API,或导出文档供后续使用。

2. 使用Swagger Codegen(生成客户端/服务器代码及文档)

Swagger Codegen可根据OpenAPI规范自动生成多种语言的客户端代码、服务器存根或静态文档。

  • 安装步骤
    通过npm全局安装:sudo npm install -g swagger-codegen
  • 生成文档
    运行命令swagger-codegen generate -i path/to/swagger.yaml -l html2 -o path/to/output-i指定输入文件路径,-l指定输出格式如html2markdown-o指定输出目录);
    也可生成其他格式文档(如Markdown、PDF)或客户端代码(如Java、Python)。

3. 编程方式生成(结合框架,如Spring Boot、Nest.js)

若项目使用特定框架(如Spring Boot、Nest.js),可通过框架集成的Swagger工具自动生成文档。

  • Spring Boot示例
    • 添加依赖:在pom.xml中加入springfox-swagger2springfox-swagger-ui
    • 配置类:创建@Configuration类,使用@EnableSwagger2启用Swagger,并设置扫描包路径;
    • 添加注解:在Controller方法上使用@ApiOperation@ApiParam等注解描述API;
    • 访问文档:启动应用后,通过http://localhost:8080/swagger-ui.html查看。
  • Nest.js示例
    • 安装依赖:npm install --save @nestjs/swagger swagger-ui-express
    • 配置Swagger:使用DocumentBuilder创建文档配置,通过SwaggerModule.setup挂载到路由;
    • 添加注解:在Controller和DTO中使用@ApiTags@ApiOperation等注解;
    • 访问文档:启动应用后,通过http://localhost:3000/docs查看。

4. 使用swag工具(适用于Go语言项目)

若项目使用Go语言,可通过swag工具根据代码注释自动生成Swagger文档。

  • 安装步骤
    运行go install github.com/swaggo/swag/cmd/swag@latest安装swag工具。
  • 生成文档
    • 初始化:在项目根目录运行swag init,生成docs文件夹(包含docs.goswagger.jsonswagger.yaml);
    • 添加注释:在代码中使用// @Summary// @Param// @Success等注释描述API;
    • 重新生成:修改代码后再次运行swag init,更新文档。

以上方法均适用于Ubuntu系统,可根据项目需求(如语言、框架、自动化需求)选择合适的方式生成Swagger文档。

0