码迷,mamicode.com
首页 > 其他好文 > 详细

请求管理模块

时间:2015-04-01 16:53:45      阅读:92      评论:0      收藏:0      [点我收藏+]

标签:

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

设计稿如下:

技术分享 说明:

  • 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 
如有接口变动,修改代码,重新测试一遍。

示例截图如下: 技术分享 

技术分享

 

请求管理模块

标签:

原文地址:http://www.cnblogs.com/Jack-Lu/p/4383875.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!