Golang使用Gin-swagger搭建api文档

前提是安装好了go环境与vscode环境 并配置过了gin

项目结构

 

1、先安装swaggo依赖包

//1
go get "github.com/swaggo/files"
//2
go get "github.com/swaggo/gin-swagger"
//3
go get -u github.com/swaggo/swag/cmd/swag
//4
go install github.com/swaggo/swag/cmd/swag

 


2、创建main.go文件,并如下编写

复制代码
package main

import (
  "fmt"
  "net/http"
  _ "test20230530/docs"

  "github.com/gin-contrib/cors"
  "github.com/gin-gonic/gin"
  swaggerFiles "github.com/swaggo/files"
  ginSwagger "github.com/swaggo/gin-swagger"
)

// @title goweb project
// @version 1.0
// @description this is goweb server.
// @host 127.0.0.1:2023
// @BasePath /user
func main() {
  r := gin.Default()
  r.Use(cors.Default())
  r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler))

  userGroup := r.Group("/user")
  userGroup.POST("/login", PostloginHandler)
  userGroup.GET("/getUser", GetUserHandler)
  r.Run(":2023")
}

// @Summary 用户登录
// @Description 用户登录
// @Accept json
// @Produce json
// @Success 200 {string} string "success"
// @Router /login [post]
func PostloginHandler(c *gin.Context) {
  fullPath := "用户登录:" + c.FullPath()
  writeString, _ := c.Writer.WriteString(fullPath)
  fmt.Println(writeString)
}

// @Summary 用户查询
// @Description 用户查询
// @Accept json
// @Produce json
// @Success 200 {string} string "success"
// @Router /getUser [get]
func GetUserHandler(c *gin.Context) {
  c.JSON(http.StatusOK, gin.H{"code": "200", "message": "testhahaa"})
}
复制代码
 

 

3、初始化文档

swag init -g main.go -o ./docs

执行以上命令,文件下就会自动生成docs文件夹,并生成docs.go、swagger.json、swagger.yaml三个文件


 

4、运行

go run main.go

运行后,打开浏览器输入localhost:2023/swagger/index.html或者127.0.0.1:2023/swagger/index.html

 

测试结果正常

 


以上为golang Gin-swagger搭建api文档简单操作方式。

 
posted @   小G同学  阅读(514)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示