更多好文 关注
golang技术实验室

1、安装swagger
go get -u github.com/swaggo/swag/cmd/swag

验证

swag -v                                                            
swag version v1.7.0
2、 安装gin-swagger
go get -u github.com/swaggo/gin-swagger
go get -u github.com/swaggo/gin-swagger/swaggerFiles
3、编写swagger注释
// @Tags Base
// @Summary 用户登录
// @Produce  application/json
// @Param data body request.LoginRequest true "用户登录接口"
// @Success 200 {string} string "{"success":true,"data": { "user": { "username": "asong", "nickname": "", "avatar": "" }, "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJVc2VybmFtZSI6ImFzb25nIiwiZXhwIjoxNTk2OTAyMzEyLCJpc3MiOiJhc29uZyIsIm5iZiI6MTU5Njg5NDExMn0.uUS1TreZusX-hL3nKOSNYZIeZ_0BGrxWjKI6xdpdO40", "expiresAt": 1596902312000 },,"msg":"操作成功"}"
// @Router /base/login [post]
func login(c *gin.Context)  {}

// @Tags User
// @Summary 用户修改密码
// @Security ApiKeyAuth
// @Produce  application/json
// @Param data body request.ChangePassword true "用户修改密码"
// @Success 200 {string} string "{"success":true,"data":{},"msg":"修改成功"}"
// @Router /user/setPassword [PUT]
func setPassword(c *gin.Context) {}
4、生成文档
 swag init -o /Users/zhangsan/Documents/GitHub/testCode/swagger/docs

-o 指定文档生成位置

swagger/docs
├── docs.go
├── swagger.json
└── swagger.yaml

在路由注册的地方引入这个docs

/**
 * @Author: zhangsan
 * @Description:
 * @File:  main
 * @Version: 1.0.0
 * @Date: 2021/3/17 上午10:11
 */

package  main

import (
	"fmt"
	"github.com/gin-gonic/gin"
	"test/swagger/src"
	"github.com/swaggo/gin-swagger"
	"github.com/swaggo/gin-swagger/swaggerFiles"
	"test/swagger/docs"//需要引入
)

func main() {
	r := gin.Default()
	r.GET("/login", src.Login)
	r.GET("/set-password", src.SetPassword)
	docs.SwaggerInfo.Title = "go-siteExample API"
	docs.SwaggerInfo.Description = "This is a sample server go-site server."
	docs.SwaggerInfo.Version = "1.0"
	docs.SwaggerInfo.Host = fmt.Sprintf("%s:%d", "localhost", 8080)
	docs.SwaggerInfo.BasePath = ""
	r.GET("/docs/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))

	r.Run() // listen and serve on 0.0.0.0:8080
}

设置版本信息等

5、 访问
http://127.0.0.1:8080/docs/index.html


更多好文 关注
golang技术实验室