golang gin框架 使用swagger生成api文档

Posted dong-ge

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang gin框架 使用swagger生成api文档相关的知识,希望对你有一定的参考价值。

github地址:https://github.com/swaggo/gin-swagger

1、下载swag

$ go get -u github.com/swaggo/swag/cmd/swag

2、在main.go所在目录执行

$ swag init

生成docs/doc.go以及docs/swagger.json,docs/swagger.yaml

3、下载gin-swagger

$ go get -u github.com/swaggo/gin-swagger
$ go get -u github.com/swaggo/files

然后在路由文件引入

import (
	"github.com/gin-gonic/gin"
	swaggerFiles "github.com/swaggo/files"
	"github.com/swaggo/gin-swagger"
	
	_ "github.com/swaggo/gin-swagger/example/basic/docs" // docs is generated by Swag CLI, you have to import it.
)

并增加swagger访问路由

url := ginSwagger.URL("http://localhost:8080/swagger/doc.json") // The url pointing to API definition
    r.GET("/swagger/*any", ginSwagger.WrapHandler(swaggerFiles.Handler, url))

 

3、一些注解,编写各API handler方法注释(注解格式传送门

1)main.go主程序文件注释:

// @title Golang Esign API
// @version 1.0
// @description  Golang api of demo
// @termsOfService http://github.com

// @contact.name API Support
// @contact.url http://www.cnblogs.com
// @contact.email ×××@qq.com

//@host 127.0.0.1:8081
func main() 

2)handler方法注释:eg

//CreatScene createScene
// @Summary createScene
// @Description createScene
// @Accept multipart/form-data
// @Produce  json
// @Param app_key formData string true "AppKey"
// @Param nonce_str formData string true "NonceStr"
// @Param time_stamp formData string true "TimeStamp"
// @Success 200 object app.R
// @Failure 500 object app.R
// @Router /dictionaries/createScene [post]

 

以上是关于golang gin框架 使用swagger生成api文档的主要内容,如果未能解决你的问题,请参考以下文章

Golang Gin 项目使用 Swagger

Go Web 框架 Gin 实践8—为它加上Swagger,帅帅的文档

Golang使用Gin-swagger搭建api

Go语言-整合gin-swagger生成API文档

GoLang -- Gin框架

One by one系列一步步学习Golang web框架Gin