前言:
目前的前后端开发中比较常采用前后端分离的做法,而前后端分离在沟通和联调方面又时长会有障碍,比如前后端进度不一、前后端联调时间较短、前后端沟通麻烦(跨地区、跨时区等等)。目前为了解决这个问题,最常用的就是通过Mock数据的方式来解决。而我们需要的是一个Web可视化接口管理工具,开源免费,接口稳定、数据自动生成,有权限管理,最好能支持自动化测试、动态切换环境等。
我们主要来对比下阿里妈妈的 RAP(最新升级版已经到RAP2)和丁香园的 api-mocker版本,两家都有线上版本和线下部署版本.
-
线上版本体验戳我RAP2&&api-mocker。
特性 | RAP2(阿里) | api-mocker(丁香园) |
---|---|---|
在线使用 | 服务稳定,适合企业、团队合作,可以直接在线使用(RAP2) | 线上接口不稳定,且不具保密性,不建议直接使用(好像服务又崩了QAQ) |
应用范围 | 知名度广 | 知名度较小 |
页面友好 | 友好程度一般 | 友好性较好 |
主要搭建环境 | Node.js 8.9.4+、MySQL 5.7+、Redis 4.0+ | MongoDB+vue+Nginx(或tomcat)等 |
拓展语法 | 支持Mock.js写法,可以随机mock假数据 | 支持Mock.js写法,可以随机mock假数据 |
接口名 | 可自定义接口地址后缀名 | 随机生成后缀 |
代理 | 貌似没有 | 可代理转发线上线下地址,便于不同环境切换 |
插件拓展 | 支持Kissy和jQuery插件 | 貌似没有 |
权限分配 | 权限管理能力强大 | 没有团队管理,仅有接口读写权限管理 |
接口文档 | 貌似没有 | 自动生成接口文档、可订阅接口变更邮件提醒 |
接口状态模拟 | 生成接口时设定requestStatus | 模拟切换不同requestStatus(同一接口不同状态切换)、模拟接口延迟等 |
适用场景 | 适合企业、大团队合作 | 适合个人、小团队使用 |
从上面的对比来看,在mock数据方面,似乎RAP2更侧重mock数据专业能力方面,专业性非常扎实,而api-mocker则是在RAP基础上进一步开发的工具,它更倾向于功能拓展,对用户更加友好,例如不同环境切换、邮件订阅等,同时也考虑到了不同网络使用场景,例如接口延迟,requestStatus等。
这里我比较倾向于采用阿里的技术方案,主要是考虑到接口后缀名自定义和权限管理这块,当然了我也很喜欢api-mocker的各种人性化方案,要是能跟得上阿里更新的脚步,把这几点不足弥补了就好了。