咨询: Go 开发 api 管理工具

45 天前
 loyth06

大家好,我是一名 Go 后端开发程序员,最近想使用 Go 语言开发一款 api 管理软件(桌面,Web ),类似 Apifox ,Postman ,RapidAPI ,Insomnia...等等 api 管理工具

为什么开发:

  1. 后端开发,方便管理开发的 api
  2. 空闲时间多,提升开发能力,积累技术栈
  3. 为后续项目"api 自动化"开发打基础

想咨询一下各位技术同行们,你们平时工作过程中使用 api 管理工具频繁吗?开源的还是不开源的呢?

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

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1029112

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX