不知道各位有没有经历过这种情况,前后端商量好接口后,约定好了字段,突然有一天,后端悄悄改了接口文档,没有及时通知前端,等测试测出bug之后,框,一口大锅甩在你头上。 Bug数量+1
当你去找后端问啥时候修改了,怎么不通知一声,后端大佬说,没有修改啊,不信你去看看文档,我都是按照文档实现的;当然啦,这是极少数的情况,大多数都是后端老哥改了忘了通知你而已
于是我给@clean-js/api-gen添加了diff功能,记录每次文档变更,无论增加,删除,修改接口文档,都会记录下来;不了解@clean-js/api-gen是啥的,可以看看之前的文章,释放生产力 | Yapi,swagger2,swagger3生成请求代码
diff功能
接下来用YAPI在线文档演示一下,除了用YAPI,使用swagger2/3也都一样可以diff
目前有两个接口
运行api-gen,生成的代码如下
接下来我们新增一个接口,重新运行api-gen
在控制台会提示你有部分APIs发生了改变
之后会生成一个log文件夹,里面按照日期生成log,具体内如下,新增一个接口, method为GET,path 为/api/jym/test
同理,删除变更也会记录。对比的都是上一次的文档
接下来我们试试变更接口文档,这个是原来的/api/user/{id}接口返回的字段
我们修改第一个field_1为jym
然后重新运行api-gen,log日志会把变更的接口以及变更前后的json都记录下来
Parameters Change in response get /api/user/{id}
这样我们就可以知道哪些接口发生了变化,建议时不时运行一下api-gen,免得接口改变了都不知道
那么问题来了,要是你抓到了后端悄悄改文档,你会怎么办呢?
这个版本除了增加diff功能,还优化了编译速度,开启多进程编译,有兴趣的小伙伴可以在评论区留言,人数多的话下次讲讲node如何开启多进程,提升性能
不容易呀,终于有人star了😭,非常感谢这位帅哥美女
贴上源码 👉🏻 @clean-js/api-gen
期待宝子们的star⭐️,你的支持就是我最大的动力
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。