Golang Go语言中 除了 Swagger 还有其他生成 API 文档的工具么?
Swagger 的文档定义太弱的感觉.. 很多无法定义
Golang Go语言中 除了 Swagger 还有其他生成 API 文档的工具么?
YAPI 、APIFOX
更多关于Golang Go语言中 除了 Swagger 还有其他生成 API 文档的工具么?的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
openapi + redoc 。
什么场景
#4 感觉还不如 Swagger 呢, 好麻烦的样子
我记得有 IDEA 插件, 无侵入式的
实际用了 protobuf 就没这个问题了
spring 全家桶之 spring-restdocs
dorna
Torna
apifox
我一般用 Swagger 的增强,knife4j
- yapi
* easyapi 有 IDEA 插件
* smart-doc + torna 有 maven 插件,这是我现在在用的
smart-doc + torna 最大优点是对代码无侵入。
通过 maven plugin 一键生成文档,上传到 torna ,其他人在 torna 上可以立即看到文档更新。torna 还支持接口调用和 mock 。
smart-doc 是一款同时支持 java restful api 和 apache dubbo rpc 接口文档生成的工具。完全基于注释生成文档,做到零侵入。
https://github.com/smart-doc-group/smart-doc
protobuf 好评,直接基于 pb 生成 rpc/http 接口代码就行了。
php
我去,按个回车就回复了,php 我用 apidoc ,java 我用 knife4j ,公司 apifox
想集成到 go 的项目里…
apifox 已经在用了… 但是要手动去添加
对于接口文档的编写, 我觉得用任何工具都会有极大的效率耗损。包括 yapi ,postman ,还有注释类的 swagger 。
接口文档特别是内部用的并且是前端用的,95%的情况就是一个简单的输出与输入,主要工作是描述清楚字段结构,主要目的是与前端达成沟通以及存档的作用,并不需要多么标准化。
而各种工具,无论是界面类的还是注释自动转换类的, 都需要遵照特定规范,按要求去填写。
点击一个输入框或是写上特定标记注释都需要额外消耗,这些精准规范其实没必要。
所以我认为在写文档的效率方面, 直接用最简单的文本是最方便的,直接在代码编辑器方法的注释上上这段文本,不需要遵照特定注释规范,无需担心格式出错。特别是输出参数比较多, 层级也多,直接用所见即所得的 json 文本本身做为描述是最简单的。
然后把我们写得不那么标准的简化注释用 ChatGPT 转换成勉强标准的结构化文档,这样就很好,它就适合做这类不精准的东西,还有纠错能力。
我试过了,它转换成的 postman 导入文件居然是对的,我还担心这种事情它一般会出错,不过凡涉及代码的东西最好不用,有时出错给它排错的时间不值。
[Imgur]( )
在Golang(Go语言)中,除了Swagger,确实还有其他生成API文档的工具。以下是一些值得推荐的替代方案:
- Godoc:这是Go语言自带的文档工具,可以从注释中提取文档,生成HTML格式的文档。虽然它不如Swagger那样专注于API文档的生成,但对于Go语言项目来说,Godoc是一个简单且有效的文档生成选择。
- go-swagger:一个流行的Swagger生成器,支持生成Swagger 2.0规范的API文档。它提供了一组命令行工具,可以从代码中自动生成Swagger文档。
- ApiDoc:与Swagger类似,ApiDoc是另一种基于注释的文档生成工具。它能够帮助开发人员生成清晰明了的API文档,配置更加灵活,更容易减少文档的冗余。
此外,还有一些综合性的API开发和管理平台,如Apifox、Stoplight等,也支持API文档的生成。这些平台通常提供了丰富的测试和调试功能,以及监控和分析工具,可以帮助开发人员更好地管理和维护API。
总的来说,在Go语言中,生成API文档的工具选择多样,开发者可以根据自己的需求和项目特点选择合适的工具。无论是Swagger、Godoc还是其他工具,都能在一定程度上提高API文档的质量和可维护性。