【golang】接口文档工具swagger使用

安装swagger

此处只针对win,其他系统安装方法可至官网查看。

go get github.com/go-swagger/go-swagger

//如果install出现pakage找不到,进行go get github.com/go-swagger/go-swagger/cmd/swagger即可
go install github.com/go-swagger/go-swagger/cmd/swagger

生成json文档注释文件

在定义接口方法之前加入swagger注释

// swagger:operation POST /machine/{type} machine createmachine
// ---
// summary: List the repositories owned by the given author.
// description: If author length is between 6 and 8, Error Not Found (404) will be returned.
// parameters:
// - name: author
//   in: path
//   description: username of author
//   type: string
//   required: true
func Test(w http.ResponseWriter, r *http.Request) {
    .....
}

然后执行生成文档json命令

swagger generate spec -o ./swagger.json

此命令会找到main.go入口文件,然后遍历所有源码文件,解析然后生成swagger.json文件

把文档文件变为可视化UI

  • 从 swagger-ui库下载dist文件夹到自己的项目中,并更名为swagger。把swagger中的index.html的url改成./swagger.json

  • 将生成的swagger.json作为一个fileServer路由加入到server中

//component/swagger为dist的目录
httpMux.Handle("/swagger/", http.StripPrefix("/swagger/", http.FileServer(http.Dir("component/swagger"))))

最后访问相应路径即可http://x.x.x.x:xxxx/swagger/index.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容