【go语言开发】swagger安装和使用-注释说明

时间:2024-04-15 12:13:54

常用注释

当使用 Go Swagger 时,可以使用不同的注释标记来描述 API 的各个方面,以便生成符合 OpenAPI 规范的 Swagger 文档。以下是常用的 Swagger 注释说明,列出了所有的注释标记:

  • @Summary:用于描述 API 操作的简要概述。

  • @Description:用于提供对 API 操作的详细描述和说明。

  • @ID:用于指定 API 操作的唯一标识符。

  • @Param:用于描述 API 操作的参数,包括参数名、位置、数据类型、是否必需等信息。

  • @Success:用于描述 API 操作的成功响应,包括状态码、响应数据结构等信息。

  • @Failure:用于描述 API 操作的失败响应,包括状态码、响应数据结构等信息。

  • @Router:用于指定 API 路由的信息,包括路径、HTTP 方法等。

  • @Accept:用于指定 API 操作支持的请求内容类型。

  • @Produce:用于指定 API 操作产生的响应内容类型。

参考例子

注册:

// Register 用户注册
//
//	@Summary	用户注册
//	@Produce	json
//	@Router		/api/user/register [post]
//	@Param		username	query	string	true	"用户名"
//	@Param		password	query	string	true	"密码"
//	@Param		mobile		query	string	true	"电话"
func Register(c *gin.Context) {
	userName := c.Query("username")
	password := c.Query("password")
	mobile := c.Query("mobile")
	...
}

main.go

//	@title			code-go api
//	@version		1.0
//	@description	code-go项目swagger api介绍
//	@termsOfService	http://swagger.io/terms/

//	@contact.name	猫哥说
//	@contact.url	www.maogeshuo.com
//	@contact.email	support@swagger.io

//	@license.name	Apache 2.0
//	@license.url	http://www.apache.org/licenses/LICENSE-2.0.html

//	@host		localhost:8080
//	@BasePath	/

//	@securityDefinitions.basic	BasicAuth

// @externalDocs.description	OpenAPI
// @externalDocs.url			https://swagger.io/resources/open-api/
func main() {
...
}