gin集成swagger构建api文档

官方文档

具体步骤如下:

安装 swag

  1. go get github.com/swaggo/swag/cmd/swag

一般安装比较慢,这里我先安装了go mod 借助https://goproxy.cn 代理,安装很快。当然,你会科学上网也可以。

安装gin-swagger

  1. go get -u github.com/swaggo/gin-swagger
  2. go get -u github.com/swaggo/gin-swagger/swaggerFiles

示例 main.go

  1. package main
  2. import (
  3. _ "demo/docs"
  4. "github.com/gin-gonic/gin"
  5. "github.com/swaggo/gin-swagger"
  6. "github.com/swaggo/gin-swagger/swaggerFiles"
  7. "net/http"
  8. )
  9. func main() {
  10. r := gin.Default()
  11. r.POST("/login", login)
  12. r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))
  13. r.Run(":8282")
  14. }
  15. // @登录
  16. // @Description login
  17. // @Accept json
  18. // @Produce json
  19. // @Param username path string true "username"
  20. // @Param passwd path string true "passwd"
  21. // @Success 200 {string} string "ok"
  22. // @Router /login [post]
  23. func login(c *gin.Context){
  24. username := c.PostForm("username")
  25. passwd := c.PostForm("passwd")
  26. c.String(http.StatusOK, "Hello world "+username+"_"+passwd)
  27. }

生成文档

在项目目录执行

  1. swag init

这个时候你会发现在项目目录新建了一个docs目录,包含docs.go、swagger.json、swagger.yaml

运行示例程序

go run main.go

查看接口文档

进入 http://127.0.0.1:8282/swagger/index.html

gin集成swagger构建api文档 - 图1

links

  • 目录
  • 上一节:
  • 下一节: