RxJava2+Retrofit+RxBus+OkHttp3+lifecycle封装 实现所有请求

本框架是对RXJAVA2、Retrofit、OkHttp3和生命周期组件的整合封装,提供链式调用、自定义Okhttpclient、多种请求协议、缓存策略、进度监听等功能。支持网络请求、文件下载、多文件上传,并能自动解析数据结构,兼容Gson、Fastjson、Jackson等库。
摘要由CSDN通过智能技术生成

RxHttp
本框架 是对 RXJAVA2 + Retrofit + OkHttp3 + lifecycle的架构的封装
1.采用链式调用一点到底
2.支持动态配置和自定义Okhttpclient,支持okhttp自定义cookie管理
3.支持多种方式访问网络GET、POST、PUT、DELETE等请求协议
4.支持网络缓存,以及本地缓存,七种缓存策略可选
5.支持固定添加header和动态添加header
6.支持添加全局参数和动态添加局部参数
7.支持文件下载,断点续传,监听进度
8.支持多文件上传,监听进度
9.支持任意数据结构的自动解析,支持gson,fastjson,jackson
10.支持显示progressDialog,progreesBar,并且生命周期和请求自动关联,无需手动控制
11.支持LifeCycle,所有请求可以配置生命周期与当前页面生命周期绑定
等等
具体功能使用方法参看demo

新增功能
支持无需设置返回对象Type 只需用泛型Observer指定对象类型 即可自动解析 例如:
此处设置为login 返回对象会自动解析成Login 解析失败则会报错,不填类型的时候,默认解析成String

.request(new HttpObserver<Login>() {
   
 @Override
 public void onSuccess(Login o) {
   
 }
 @Override
 public void onError(ApiException t) {
   
 }
});

支持对象参数 会自动解析对象中的属性 转成keyvalue
addTypeParamters(Object object)
addTypeHeader(Object object)
2.2.1版本开始支持 gson,jackson,fastjson
GSON 可以使用@GsonField 自定义注解 过滤掉不需要的参数 或者重定义jsonField值
JACKSON 可以使用@JsonIgnore 等原生注解 过滤掉不需要的参数 或者重定义jsonField值
FASTJSON 可以使用@JSONField 等原生注解 过滤掉不需要的参数 或者重定义jsonField值
导入

Step 1. Add the JitPack repository to your build file

allprojects {
   
 repositories {
   
  ...
  maven {
    url 'https://jitpack.io' }
 }
}

Step 2. Add the dependency

dependencies {
   
 implementation 'com.github.eajon:RxHttp:2.2.3'
 选择你需要的JSON解析器 并设置converterType 为该类型 converterType不配置 默认为GSON 需添加GSON依赖
 implementation 'com.google.code.gson:gson:2.8.5'
 implementation 'com.alibaba:fastjson:1.1.52.android'
 implementation 'com.fasterxml.jackson.core:jackson-databind:2.9.8'
}

如何使用他
在Application中设置基础配置

RxHttp.getConfig()
 .baseUrl(...)/*基础路径,这里配置了请求中可以不单独配置*/
 .converterType(...)/*设置json解析器,默认GSON*/
 .baseHeader(...)/*公用请求头*/
 .baseParameter(...)/*公用请参数*/
 .okHttpClient(...)/*自定义okHttpClient*/
 .log(...)/*自定义Log名称*/
 .rxCache(...);/* 配置cache, 不配置默认使用okhttp的缓存*/

常规请求使用

new RxHttp
 .Builder()
 .get()/*post() put() delete() 按需配置默认POST*/
 .requestBody(...)/*body对象*/
 .json(.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值