swagger-ui, redoc 好像都快弃坑了, rapi 作者似乎却干劲十足, openapi-ui 作者躺平式更新,大家现在都在用什么 api 文档软件,经济下行,开源弃坑的好像越来越多?

2 天前
 rookie2luochao

这里主要是说一些开源免费的 openapi 规范 UI 文档, 那些一上来就无脑各种喷的还请嘴上留情,好歹也算为爱发电,大家都不容易,找点杂事干着也是挺好的

不得不说 apifox 确实是个好东西,目前来看也没咋收费,可是它好像只对 java kotlin 友好,而且我总感觉它好卡,它很多强大的功能我都没有使用过,关键是它为啥必须手动导出 openapi.json 啊,这让想直接根据配置生成 ts http 客户端的前端小伙伴非常蛋疼

目前来看这 4 个包的更新情况:

swagger-ui:功能完善,没咋更新了,就是 UI 体验很差
redoc: 没咋更新了,它竟然不支持测试接口,有点费解
rapi: 作者重新回归,更新活跃,总感觉它的代码阅读起来费劲,不知道是不是我太菜了
openapi-ui: UI 使用良好,使用的最新技术栈构建,代码可读性可维护性高,作者一直在躺平式更新,因为用户太少,没人提 bug😂

4680 次点击
所在节点    程序员
90 条回复
rookie2luochao
2 天前
@fantasy0v0 对,一般是后端把代码写好了,然后用一个 swagger 规范的工具,解析后端代码,生成一份接口的 openapi.json 配置文件,然后 swagger-ui 就根据这个配置文件生成 api 文档,前端也可以根据这个配置文件生成调用接口的客户端函数,ts 定义等等内容
rookie2luochao
2 天前
@fantasy0v0 我写了一个 [openapi-ui]( https://github.com/rookie-luochao/openapi-ui) 用于展示 api 文档 <br>
维护了一个供前端解析 swagger 配置文件生成前端代码的工具 [openapi-ts-request]( https://github.com/openapi-ui/openapi-ts-request)
coolcoffee
2 天前
看到楼主的推荐,我先试试从 swagger-ui 换成 rapi 去。redoc 之前尝试使用过,开源的版本功能残废以及付费版本的体验也总是怪怪的。

楼上推荐的什么 apifox 、insomnia 、postman 我觉得太重了用不上,写完接口自动生成接口文档并且网页上能调试才是最方便的,能够及时跟着服务端最新版本走。
rookie2luochao
2 天前
@Hanser002 swagger-ui 确实 UI 有点不太好用,但是如果后端如果集成一些现代的 swagger-ui 文档估计就好很多
rookie2luochao
2 天前
@coolcoffee 有没有一种可能可以试试楼主写的 openapi-ui https://github.com/rookie-luochao/openapi-ui ,你有 bug ,我立即响应🥹
heganghua
2 天前
openapi.json 这是一个啥? 我都是写完接口后直接同步到 foxapi
rookie2luochao
2 天前
@heganghua swagger-ui 就是根据 openapi.json 渲染的文档,前端可以根据这个 openapi.json 和后端服务同步,省去写 ts, http 客户端,还有智能提示
rookie2luochao
2 天前
@heganghua apifox 没有对应的配置可以供前端使用,所以有点蛋疼,很影响使用体验
rookie2luochao
2 天前
@coolcoffee 不要 998 ,不要 98 ,楼主写的 openapi-ui 免费送你,哈哈哈
coolcoffee
2 天前
@rookie2luochao 我重新对比了一下 openapi-ui 和 rapi 。我觉得 openapi-ui 还有一些没能满足我期待的地方😂

像美观上来说,method 显示那么大有点亮瞎狗眼;另外我这边看接口的字段请求和返回格式很乱,没有 rapi 那样清晰明了。
从功能角度来说,那个侧边栏折叠状态完全没法用就先不用放出来吧;接口组的折叠功能也还缺失会导致接口数量多了很难找。
rookie2luochao
2 天前
@coolcoffee 那把 method 调小一点吧,折叠那就砍掉吧,是不是随意了一点🥹
支持很多搜索条件,随便搜一下关键词,应该都能搜到想要的接口
接口返回 UI 展示可能有些人会喜欢,有些人会不喜欢,因为很多功能都是重新设计的
接受意见改进,欢迎 issue 区提供一些改进意见
rookie2luochao
2 天前
@coolcoffee 我个人觉得 openapi-ui 整体还是要简洁一点?
TGhoull
2 天前
可以试试 Spring Restdocs ( https://spring.io/projects/spring-restdocs),上手略有门槛,切入点很新颖,优点是接口 mock 测试和接口文档相结合,可以根据接口 mock 测试代码,直接生成接口文档。
rookie2luochao
2 天前
@coolcoffee openapi-ui 最大的优势可能就是整体 UI 布局简洁,query 输入对复杂数据类型支持的比较好
返回结构可能更迎合前端,因为接口测试很多时候都是丢给前端测的,前端太需要了解返回数据的层级了,当然最重要作者的使用风格影响了设计
抛开这些,积极接受用户的功能反馈建议
rookie2luochao
2 天前
@TGhoull 这个怎么没听人使用过?
BiChengfei
2 天前
swagger ,各种语言都有对 swagger 规范的实现,很多都是嵌入到项目中,实时生成。
接口信息,本来就是一个轻量级,很成熟的东西,功能做完后,本来没必要更新了
kalman03
2 天前
apideploy.com 我开发的,欢迎指导。
kalman03
2 天前
rexcelia
2 天前
Apifox 啊,好多公司在用,又免费
rookie2luochao
1 天前
@rexcelia apifox 对 java 的支持没得说,对 go, nodejs, python 的基本上没有支持,所以根据代码生成 api 文档的话,apifox 只对 java 友好

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

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

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

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

© 2021 V2EX