安装swaggo
go install github.com/swaggo/swag/cmd/swag@latest
编写swag
import (
"github.com/gin-gonic/gin"
"goweb/internal/service"
"goweb/model/response"
)
// userrouter 路由
func userrouter(ctx *gin.routergroup) {
ctx.get("/login", login)
ctx.post("/adduser", adduser)
ctx.get("/deluser/:id", deluser)
ctx.get("/getuser", getuser)
ctx.get("/pageuser", pageuser)
}
// login
//
// @description java学习golang开发
// @tags user接口
// @router /user/login [get]
func login(ctx *gin.context) {
response.success(ctx, service.login())
}
// @description 添加用户信息
// @tags user接口
// @param user body model.user true "用户实体"
// @success 200 {string} string "success"
// @failure 500 {string} string "fail"
// @router /user/adduser [post]
func adduser(ctx *gin.context) {
response.success(ctx, service.adduser(ctx))
}
// @description 删除用户
// @tags user接口
// @param id path int true "用户id"
// @router /user/deluser/{id} [get]
func deluser(ctx *gin.context) {
service.deluser(ctx)
response.ok(ctx)
}
// @description 删除用户
// @tags user接口
// @param id query int true "用户id"
// @router /user/getuser [get]
func getuser(ctx *gin.context) {
response.success(ctx, service.getuser(ctx))
}
// @description 分页查询用户数据
// @tags user接口
// @param page query int false "当前页码"
// @param pagesize query int false "每页数量"
// @router /user/pageuser [get]
func pageuser(ctx *gin.context) {
response.success(ctx, service.pageuser(ctx))
}启动类
import (
swaggerfiles "github.com/swaggo/files" // swagger embed files
ginswagger "github.com/swaggo/gin-swagger" // gin-swagger middleware
_ "goweb/docs"
)
// @title swagger example api
// @version 1.0
// @description go web 框架gin集成swagger.
// @termsofservice http://swagger.io/terms/
// @contact.name api support
// @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
// @externaldocs.description openapi
// @externaldocs.url https://swagger.io/resources/open-api/
func main() {}初始化doc
swag init
访问
http://127.0.0.1:8081/swagger/index.html#/

更多
请探索官网
swag package - github.com/swaggo/swag/v2 - go packages
以上就是go集成swagger实现在线接口文档的代码详解的详细内容,更多关于go swagger在线接口文档的资料请关注代码网其它相关文章!
发表评论