返回

用 Go 实时生成 API 文档,解放开发者双手!

见解分享

引言:

API 服务的文档至关重要,但手写文档常常令人厌烦,尤其是同步更新方面的问题。使用自动生成文档的方式实时更新文档,是一个巨大的便利。告别一边查看文档,一边跟踪代码的麻烦,现在您只需专注于开发,而 API 文档将自动为您同步更新!

Go 实时生成 API 文档指南:

1. 安装 Go 语言工具链:

确保您已安装最新版本的 Go 语言工具链,包括 gogofmtgodoc 命令。

2. 安装和配置 go-swagger:

go-swagger 是一个强大的库,用于从 Go 代码生成 OpenAPI 文档。使用以下命令安装 go-swagger:

go get github.com/go-swagger/go-swagger/cmd/swagger

配置 go-swagger 以生成符合 OpenAPI 3.0 规范的文档:

swagger generate spec --scan-models -o api.yaml

3. 创建 Go 结构和注释:

在 Go 代码中创建您的数据结构并使用 // swagger: 注释添加 OpenAPI 相关元数据。例如:

type User struct {
    // swagger:required
    ID        string  `json:"id"`
    // swagger:required
    Name      string  `json:"name"`
    // swagger:required
    Age       int     `json:"age"`
    // swagger:required
    CreatedAt time.Time `json:"created_at"`
}

4. 使用 swagger generate 命令生成文档:

运行以下命令从 Go 代码生成 OpenAPI 文档:

swagger generate spec --scan-models -o api.yaml

5. 部署生成的文档:

将生成的 api.yaml 文件部署到可以公开访问的 Web 服务器上。可以使用 AWS S3、GitHub Pages 或其他类似服务。

6. 配置 API 服务以引用文档:

在您的 API 服务中,使用 swagger.jsonopenapi.json 标头引用部署的 OpenAPI 文档。例如:

GET /api/users HTTP/1.1
Host: example.com
Accept: application/json
Swagger: https://example.com/api.yaml

结论:

遵循本指南,您将能够使用 Go 轻松生成和实时更新 API 文档,从而释放您的双手,让您专注于更重要的任务。通过使用 go-swagger 等工具,文档同步更新不再是问题。拥抱自动化,释放您的潜力!