swagger使用笔记

  在很多框架中都会看到swagger这个词,这个组件,到底是干什么的呢?

  我所了解的swagger常见功能:
  1. API文档生成工具,用户对系统中的API进行说明,以及提供测试接口。
  2. 代码自动生成功能(就是根据特定的格式,生成RESTful风格的代码,是不是很神奇?是不是感觉写API代码块下岗了?)

  在github上查找go语言版本的swagger,发现了下班这个包
go-swagger。下载下来后,根据里边example中的代码测试了一下,神奇的发现,根据swagger.json文件,居然生成了一堆go代码。打开一看,这些代码实现了swagger.json定义好的API.。感觉如果只要会写swagger的配置文件,就不用写代码了(娱乐一下,开个玩笑)。

  其实,我只是想找一个能够生成API文档的工具,顺便提供测试接口就可以了。突然给我蹦出来一个可以生成golang代码的工具,除了惊奇之外,其实依然没有满足我的需求。

  继续查找,找到了swagger-ui。下载下来后,按照提示,在dist目录中运行了index.html。出现了网上介绍的界面,发现其中有一个浏览框,输入的就是swagger.json。顿时就明白了:
  1. 原来swagger-ui是根据swagger.json中定义API展示出来。
  2. go-swagger是根据swagger.json中定义的API,将其生成为代码。

  我的需求是生成API文档,其实我需要将我的代码生成出swagger.json文件,而swagger.json中又是有一套自己的语法格式,问题就来了,要想满足我的需求,就需要有一个工具,能根据我的代码,生成swagger中语法格式的swagger.json文件。

  在go-swagger中,除了能够根据swagger.json生成代码外,其实也可以根据代码,生成swagger.json文件,执

你可能感兴趣的:(Golang小知识)