目录
- mock数据的使用场景
- 现在有哪些mock的方法
- YApi
- Postman
- YApi的介绍
- 为什么不运用YApi
- YApi的mock数据的好处
- YApi的相关文档
- 怎么搭建一个Mock Server(PostMan)
- 怎么创立一个Mock Server
- 简略的装备需求Mock的接口
- 装备Mock Server并创立Server
- 获取私有Server的API Key
- 创立成功后会拿到哪些数据
- 测验功用
- 在Android项目里边能怎么规划一套 动态切换Mock和正常接口的切换组件思路
- 自定义注解
- 经过模仿RxJava2CallAdapter的思路
- 经过注解和反射技能动态修正真正网络恳求的Request参数
mock数据的使用场景
在大部分开发同学的日常开发日子中,大概率都能遇到一个问题,后端同学保护了某个需求的接口文档,然后由于不可抗力的要素,导致无法供给正常的数据,你刚好就卡在了这个当地,莫非要痴痴傻傻的等着“她”回来吗;
这个时候就体现出Mock数据的重要性了,经过mock的方法自给自足,等“她”回来之后开始联调,完成后删除这个mock的逻辑,也不必“痴痴傻傻等候她回来”。
现在有哪些mock数据的方法
现在我熟悉的有YApi、Postman供给了mock服务,
个人比较引荐YApi 具有接口文档、权限办理、Mock数据等多个功用,可是仅有的缺陷是:渠道需求人搭建,接口需求Java同学保护;假如公司有意向的话能够花点时刻去搞一下,自己一个人保护有一点因小失大的感觉……
Postman 这个工具一般在接口联调的时候运用频频,其具有一个Mock server的功用,不需求你去搭建渠道,也不需求保护接口文档,便是最简略的Mock数据的功用。
YAPi
简介:一个集成化的渠道,能够经过接口文档、权限办理、mock数据的功用,其功用完成度十分高,十分合适企业去保护;
不引荐的原因:比较合适公司项目里边去保护,大家都用这一套,假如是个人运用,有点因小失大,保护本钱高于你的收益;
YApi的mock好处:不需求改动太多的参数,仅将本来的网络恳求的相对路径进行修正即可,方便好用;
// 与本来的网络恳求相对路径
String url = "user/info";
// mock网络恳求的相对路径
String url = "443/user/info";
YApi的文档:官网地址 教程 内网部署 mock功用
Postman的mock数据教程
创立Mock server:翻开Postman后,能够发现一个Mock Server模块,点击 + 增加一个Mock Server
装备需求mock数据的接口:支持 RequestMethod、RequestUrl、RequestBody、ResponseCode、ResponseBody的装备
这儿我简略的装备一下数据,并点击Next进行下一步
装备Server的参数: 首要装备名称和是否私有server(假如够选了私有Server,则需求生成一个Postman API Key,并装备到 X-api-key 恳求头中 怎么生成API-Key)
创立成功后的返回结果:会给出一个MockUrl,这样一个mock恳求就完成了
测验mock功用:这儿查看mock的数据,我们能够经过访问这个地址来获取数据
规划Android上自动切换mock和实在的网络恳求组件
学习自己构建一个mock数据渠道的最终目标是为了搭建一个能够配合rxjava的动态切换mock和实在数据的网络恳求组件;
根据Retrofit + RxJava的基础上进行魔改,
- 自定义注解标识需求mock数据的方法,并携带一些mock需求的数据(比如mock后的url、header等);
- 构建Retrofit对象,在测验环境运用自定义CallAdapterFactory,在出产环境运用RxJava2CallAdapterFactory;
- 在Factory的get()方法中,找到对应注解并拿到注解上的数据,并阻拦到自定义的CallAdapter中,假如没有则以为不需求mock,返回RxJava2CallAdapter对象去正常的恳求。
关于这个组件,在后续会进行更新。