go gin swagger安装与使用
原文链接:https://blog.csdn.net/joychenwenyu/article/details/126935706
进入正题
1、首先在main函数前添加描述:
准备工作
引入swaggo依赖:
## swagger 依赖
go get "github.com/swaggo/files"
go get "github.com/swaggo/gin-swagger"
## swagger 命令行工具
go get -u github.com/swaggo/swag/cmd/swag
go install github.com/swaggo/swag/cmd/swag
进入正题
1、首先在main函数前添加描述:
// @title ginchat
// @version 1.0
// @description chenweihao test gonchat
// @termsOfService http://swagger.io/terms/
// @contact.name cwh
// @contact.url http://www.swagger.io/support
// @contact.email support@swagger.io
// @license.name Apache 2.0
// @license.url http://www.apache.org/licenses/LICENSE-2.0.html
// @host 127.0.0.1:8080
// @BasePath
func main() {
utils.InitConfig()
utils.InitMysql()
r := router.Router()
r.Run() // 监听并在 0.0.0.0:8080 上启动服务
}
2、注册swagger路由信息:
_ "ginchat/docs" 这个记得引入 不然会报错
import (
_ "ginchat/docs"
"ginchat/service"
"github.com/gin-gonic/gin"
swaggerFiles "github.com/swaggo/files"
ginSwagger "github.com/swaggo/gin-swagger"
)
func Router() *gin.Engine {
r := gin.Default()
r.GET("/swagger/*any", func(c *gin.Context) {
ginSwagger.DisablingWrapHandler(swaggerFiles.Handler, "SWAGGER")(c)
})
r.GET("/index/index", service.GetIndex)
r.GET("/user/index", service.GetUserList)
return r
}
3、 给函数方法添加备注:
// GetIndex
// @Tags 首页
// @Success 200 {string} welcome
// @Router /index/index [get]
func GetIndex(c *gin.Context) {
c.JSON(200, gin.H{
"message": "welcome",
})
}
4、文档初始化
swag init
项目结构
```
./helloworld
├── docs
│ ├── docs.go
│ ├── swagger.json
│ └── swagger.yaml
├── go.mod
├── go.sum
└── src
├──cmd
├── main.go
```
5、编译运行
编译运行服务,访问本地http://127.0.0.1:8080/swagger/index.html 即可访问swagger文档
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理