当前位置: 代码网 > it编程>前端脚本>Golang > Go集成swagger实现在线接口文档的教程指南

Go集成swagger实现在线接口文档的教程指南

2024年11月25日 Golang 我要评论
安装swaggogo install github.com/swaggo/swag/cmd/swag@latest编写swagimport ("github.com/gin-gonic/gin""go

安装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在线接口文档的资料请关注代码网其它相关文章!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com