-
导包
go get -u github.com/swaggo/swag/cmd/swag
-
在main.go上加入主注释
// @title 希科志愿者项目 // @version 1.0 // @description 希科志愿者项目接口文档 // @host 8083 // @BasePath /api/v1
-
在接口对应的func上加入api注释
// Create // @Summary 创建召回 // @Tags 召回 // @accept json // @Param ProjectNo body string true "项目编号" // @Param Title body string true "签到名称" // @Param TimeStart body alc_types.Time true "开始时间" // @Param TimeEnd body alc_types.Time true "结束时间" // @Param Duration body int true "召回时长" // @Param RemindUser body int true "提前n分钟,提醒志愿者" // @Param RemindManage body int true "提前n分钟,提醒管理员" // @Router /api/v1/manage/admin/create [post] func (ctrl *CallbackCtrl) Create(ctx *gin.Context)
这里有个点要注意:
-
@Param这个参数有固定的格式:
param name`,`param type`,`data type`,`is mandatory?`,`comment` `attribute(optional)
前面四个属性是必填的,分别对应:参数名,参数接收类型,参数数据类型,是否必须,注释
-
-
生成swagger docs文件,这里有两种情况:
-
main.go所在目录是文件根目录,直接在根目录运行:
swag init
即可在根目录生成docs文件夹 -
main.go所在目录不是文件根目录,这个时候需要让swagger扫描到controller层的注释,但是命令还是必须在根目
-
gin-swagger生成API文档
最新推荐文章于 2023-10-14 21:42:45 发布