一.背景
1.首先公司原先用的是swagger,而且是手写yaml格式,甚至于最初还有word。作为一只node中间层,偷懒成性猿,上接前端,后连java后端,python数据组,翻个swagger,一天就过去了,万万不能接受。开始了一波骚操作,找寻各种能替换个方式。
一顿操作后选定了rap2,毕竟是阿里家的,怎么着感觉会靠谱些,又有全局搜索功能,也有mock。好了好了,我承认是因为界面风格(不是最新版,最新版emmm)。
生命不止,作死不止。rap2不支持导入,怎么办?去官方提了issue,并不打算解决。已经和老大说好要换,吹出去的牛总要实现吧。先部署了一套在测试环境,徒手撸代码,写了套swagger导入,postman导入,直接操作rap2数据库。(我可真是个机灵鬼,手动滑稽)
4.To Young To Simply 开始使用感觉哪哪都漂亮,哪哪都棒,然后当接口全部导入后。首次进入会查询很久,看了源码发现一次查询直接把所有的接口详情全部都查完了,敢情直接查了个整库。受不了受不了!!!同事修改的源码,改成点击接口,查询详情。react无能,上当了,改完后,有bug改不来,修改内容,要点击两次才会刷新。最最要吐槽的是,不是主页刷新就会404!
5.有了上述吐槽,却还是用了两月。毕竟比写swagger总是强多了。懒汉换东西总要有契机,某天突然登录不上,验证码错误。嘿哟,这宝宝又没改怎么会坏?到底是年轻,想说要不要用最新的版本试试。(大大的失误,没改代码不应该这样操作,引以为戒)又部署了一版新的,还是不行。这可如何是好,慌的一匹?后来发现是redis,别问,问就是懒鬼用了测试环境同个redis,数据组猿把redis写满了。(鬼知道他们在做啥骚操作。)
6.普通人恢复回去就好了,但是作死党不存在。有一就有二,下次坏了咋办?一溜思索,找了运维要了内网服务器,这总没人捣乱了吧。是不是以为要迁移了?新版的rap2依旧是一次加载,还是要改成单个加载,然而之前改的同事已经离职(我不知道,我不会!!!)改回去,是不可能改回去的,用新不用旧,回去依旧又bug。
7.想换的苗头已经变成窜天大火,又是一顿乱搜,这次选上了yapi。之前用rap2,用的太急都没对比考虑。这次已经不是两月前的小白了。一通对比,还看了各种对比文章。先去yapi官网试了一通,看了github,嘿嘿,熟悉的js一套,rap2也是,只是ts,就看了一丢丢,并没有实践好吧。
二.优势
支持json/swagger/postman导入
可以直接调用接口,替代了postman功能,能选择测试环境
有全局搜索功能
三.小不习惯
预览里没法直接展示json,只有表格解释。
没有测试人员选项,只能给测试开发者权限,并不希望他们改我接口,呀喂!
附上链接帮助下坑里的同学
yapi
YAPI环境搭建
rap2sevice 包含swagger/postman转rap2,rap2转swagger
Rap2导出swagger2格式json,方便转入yapi
rap2官网