蓝少泽

天生我材必有用,千金散去还复来。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

由于现在的请求代码每个人都是自己写的,既没有一个统一的入口,也不方便框架的替换。
所以写了一个请求管理的中间层。

设计稿如下:

 说明:

  • 1.请求配置。

RequestConstant? 类的内部枚举类RequestTag, 定义有哪些请求。

定义包括:

  1. 相对路径
  2. url类型,主要是和host相关。会和相对路径一起拼接成完整的url。
  3. 方法,目前只有get, post, json。他决定了RequestManager如何构造请求体。默认是post。
  • 2.请求调用入口,业务相关。

RequestFactory? 
这个类是使用类,业务相关调用http请求的唯一入口。
主要负责了构造参数给RequestManager。
请求成功或失败会回调ResponseHandler的相应方法。

  • 3.请求实际发起者。功能相关。

RequestManager会根据RequestTag, 发起实际的请求,
这个类是业务无关的,业务相关的定义在RequestTag中。
同时这个类会做些基本的判断,如是否有网,是否需要登录。如同达不到发请求的要求,则直接调用ResponseHandler接口的onStart(RequestTag? tag, Code code)方法。
把出错原因作为参数code返回。

  • 4.测试单元相关。

提供了两个类,用于测试请求的。
TestCenterActivity?.java和 UrlTestActivity?.java 
如有接口变动,修改代码,重新测试一遍。

示例截图如下:  

 

posted on 2015-04-01 15:02  蓝少泽  阅读(314)  评论(0编辑  收藏  举报