大家好,我是一名 Go 后端开发程序员,最近想使用 Go 语言开发一款 api 管理软件(桌面,Web ),类似 Apifox ,Postman ,RapidAPI ,Insomnia...等等 api 管理工具
为什么开发:
想咨询一下各位技术同行们,你们平时工作过程中使用 api 管理工具频繁吗?开源的还是不开源的呢?
1
totoro52 219 天前 1
以前都是手写文档,后面实在累了, 用 swagger 生成 json 再导入到 apifox 里去管理维护,简单明了,而且 apifox 也支持定时导入。
|
2
mohuani 219 天前
1 、一般都是前后端第一次对接的时候用下,然后就是出问题的时候,再看一下原来的 api 文档,看看是前端还是后端偷偷改代码了。
2 、还有就是自己可能会写一些本地的 api 脚本,时间长了再用的时候,记不住参数了,再看一下文档,不过这些基本都用 postman 解决了 |
3
smartdoc647 219 天前
go 语言做 web 开发,api 管理工具不是最重要的,生成 API 文档的过程很烦,go swagger 页要求程序员写一堆的注释。
我自己是 java 文档生成工具 smart-doc 的作者。目前也只一个主力 go 语言的应用开发者。管理工具其实已经很多了,针对 go 语言文档生成端非常的弱 |
4
totoro52 219 天前
@smartdoc647 是的 在方法上拉一坨的注释。。。
|
5
tangtang369 219 天前
swagger 不好用吗
|
6
Rehtt 219 天前 via Android
我这是用 protobuf 定义接口,生成 swagger 再导进 apifox
|
7
StarUDream 219 天前 1
我们也是用 Protobuf 定义接口,然后用 https://github.com/grpc-ecosystem/grpc-gateway 生成文档,相较于 Swaggo 写注释体感上好不少
|
8
lolizeppelin 219 天前
我感觉用 ast 解析注释, 配合反射读字段 tag 的形式生成 Swaggo 更灵活一点
|
9
tangqiu0205 219 天前
@Rehtt #6 同样
|
10
luozic 219 天前
基于 swagger 的 openapi 标准再搓呗,这个是现在的标准,都已经到 3.0 了 GitHub 上有协议
|
11
veni2023 219 天前
apipost 不错,分享方便,权限可控,还有提取返回,自动填充其他 api 相同字段名说明这个方便的功能
|
12
lrh3321 219 天前
typespec 写,然后转成 openapi3 导入 Insomnia
|
13
wujianhua22 219 天前
1 、go-swag 用着很不爽,我们都用 protobuf 生成接口文档。然后在程序里面加一个 swagger 的 UI ,静态部署就可以了。
2 、另外不建议做 API 管理软件。现在的 API 管理软件已经饱和了,除非你能解决痛点或者又更好的管理方案,比如实现更高级的 API 版本管理等。 3 、也可以做做类似 Apifox Helper 这种工具,java 可以通过注解识别程序代码里面的 handler/controller 去自动解析代码然后生成导出文件,go 这边我还不知道怎么实现,这种应该有一定的技术提升。 |
14
cyrivlclth 219 天前
@totoro52 #4 瘪说了,java 那边 swagger 有注解,有些人还嫌弃,吹什么代码侵入性,非要在方法上拉一坨注释
|
15
layxy 219 天前
@lolizeppelin 问题 go 不像 java 有框架和约束写法,go 的 web 框架基本没啥约束,参数绑定这块灵活性很高,很难识别和生成文档
|
16
Desdemor 219 天前
1 普通版本:swag 生成,导入到 apifox
2 框架自带:goframe 里面带了个注入的好像,没细看 |
17
lolizeppelin 219 天前
|
18
ben666 219 天前
go api 网关 bfe 了解下
|
19
bugcreator 218 天前 via iPhone
我们之前 Java 用的 yapi ,不知道是否有 go 版本,不过应该可以作为参考。
|