Golang Gin 项目使用 Swagger

Posted jehorn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Golang Gin 项目使用 Swagger相关的知识,希望对你有一定的参考价值。

Golang Gin 项目使用 Swagger

标签(空格分隔): Go


首先需要github.com/swaggo/gin-swaggergithub.com/swaggo/gin-swagger/swaggerFiles(参见gin-swagger)。

然后根据 github.com/swaggo/swag/cmd/swag文档获取到swag工具;执行swag init在项目根目录下生成docs文件夹。然后在路由中import _ "/docs"。这时候编译程序,打开http://localhost:8080/swagger/index.html就可以看到API。有时候打开页面js报错,多刷新几次就有了(原因未知)。

注意项目目录下,包依赖不能用src等名称,请看以下源码:

//exclude vendor folder
if ext := filepath.Ext(path); ext == ".go" &&
    !strings.Contains(string(os.PathSeparator)+path, string(os.PathSeparator)+"vendor"+string(os.PathSeparator)) &&
    !strings.Contains(string(os.PathSeparator)+path, string(os.PathSeparator)+".history"+string(os.PathSeparator)) &&
    !strings.Contains(string(os.PathSeparator)+path, string(os.PathSeparator)+".idea"+string(os.PathSeparator)) &&
    !strings.Contains(string(os.PathSeparator)+path, string(os.PathSeparator)+".git"+string(os.PathSeparator)) {
    fset := token.NewFileSet() // positions are relative to fset
    astFile, err := goparser.ParseFile(fset, path, nil, goparser.ParseComments)

swag工具排除了vendor.history.idea.git目录下的文件(参见pl)。可以使用godep等工具将依赖包放在vendor目录下。

以上是关于Golang Gin 项目使用 Swagger的主要内容,如果未能解决你的问题,请参考以下文章

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

golang gin框架 集成swagger 自动生成文档

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

# 聊一聊悟空编辑器 #Gin + Swagger快速生成API文档

golang demo 之王realworld,使用golang+gin做后端技术,使用vue做前端项目的开源博客项目

golang demo 之王realworld,使用golang+gin做后端技术,使用vue做前端项目的开源博客项目