开发流程之四:网络请求管理类HttpClient

本文与网络请求框架那篇文章大致类似,但封装的更为完善,介绍的也更详细,在项目中所有用到的网络请求都需要该类参与。

首先

添加依赖库:

compile 'com.squareup.retrofit2:retrofit:2.1.0'compile 'com.squareup.retrofit2:converter-gson:2.1.0'

然后,写一个独立的网络请求管理类HttpClient,其中有网络请求的基地址,各种超时时长等属性,配置日志拦截等信息,图中涉及的类,本文均会一一贴出,HttpClient类如下:

如上图所示:

config方法中有baseUrl这个参数,为网络请求的基地址,该方法在BaseApplication中进行调用,并传入参数即可,注意一点,基地址的结尾为"/"

在BaseApplication中进行调用并传参

其中:EnvUtil如下,syncIsDebug方法也要在BaseApplication中进行调用,以此设置app运行环境

EnvUtil类

其中:日志拦截器HttpInterceptor(context)代码稍多,分两图截取,如下:

HttpInterceptor上半部分
HttpInterceptor下半部分

以上均为使用网络请求的准备工作,下面介绍如何使用。

新建一个interface接口 NetworkAPI, 其中的某一个方法如下:

可见,其中的ResponseListBean这个信息类是请求的列表数据返回后存入的基础类,其后的CatPrizeCommentBean这个信息类是页面中需要用到的列表数据信息类。

请求列表的方法

所以ResponseListBean是啥样的?如下:

该类中所有字段要根据后台所给来写,我们主要就是想要获取data这个对象

基础列表信息类ResponseListBean

在页面中使用:

使用该网络请求获取列表数据

同样的,如果要获取的数据并不是列表而是空或者是简单的字段,如点个赞

请求方法中不需要后台新数据的方法

其中的ResponseBean与ResponseListBean大同小异,如下:

ResponseBean信息类

若需要从返回的数据中获取数据,也可以在其后添加当前页面所需的数据信息类,写法与获取列表数据一样。

如上各步骤,一套从搭建网络请求到获取后台数据的流程走完。

结束。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,296评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,305评论 25 709
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 14,112评论 6 13
  • 走,是一张票。归,也只是一张票。 离开是为了归来。 刚归来,一切感觉特好,有种重生的味...
    芝芝风子阅读 3,339评论 6 6
  • 在爱情小说里,我们伶牙俐齿聪明机智,可在现实面前,我们既是疯子,又是傻子; 这个世界上哪有那么多的缘分?都不过是处...
    jamieT2311阅读 3,184评论 0 0

友情链接更多精彩内容