抛出问题
- 问题1:日常开发中,我们都会遇到接口类的请求,各种各样的第三方接口,以及内部接口等,大家都是怎么方便快捷的维护这些接口的快速请求呢?
- 问题2:面对第三方的接口,对接的时候记得,后续查找会不会觉得找不到在哪了呢?或者查找归类比较麻烦呢?
- 问题3:类似的第三方接口,你是否写重复的方法调用和处理结果呢?
- ……
如果你有上面的类似问题,是否会考虑优化呢?也就是把几户一样的接口做成配置化,不管是调用还是后期维护都比较方便呢?本着“方便他人,造福自己”的开发原则,必须从优处理,安排!
API接口例子
1 | // 接口1 |
针对上面的两个接口,如果做成配置化的请求,也就是,写好统一的请求入口,对于后续新增同样接口,只需要根据格式配置接口地址以及请求参数即可。
接口请求类设计原则
- 单一入口
- 接口信息可配置化
- 统一校验接口参数,防止非法参数请求
- 统一的请求方法和处理
- 接口返回数据格式一致
- ……
请求类的单一入口
单一入口是指每个接口请求,公共请求这个方法即可,此方法需要传配置的接口键的值,以及请求参数等,具体可以看代码里的注释说明。
1 | /** |
配置接口信息
上面的2个接口,直接做成配置化的形式,此配置api_config
的键的名字可以自定义,最好命名为接口的说明,url为接口地址,type为Content-Type的类型选择,param就是接口参数,具体的参数配置看注释即可。
1 | // 接口地址,请求方式,参数的配置 |
校验参数
根据配置的参数,进行校验请求传入的参数是否有效,可以有效过滤部分非法参数
1 | /** |
完整源码
上面说的三点为核心部分,可能看起来有点云里雾里的感觉,我肯定不是那种不将就的人,完整的源码必须安排上,如有写到不到位或者不全的,请不要吐槽我啦,你懂的。
1 |
|
最后
刚过完春节,大家估计都还没缓过劲来进入Coding状态,恭祝大家在新的一年里能够收获多多,收获满满,2021所想皆能实现。如果大家有什么好的想法或者建议,也可以底部留言给我哈,感谢哦!