RxJava+Retrofit,在联网返回后如何先进行统一的判断?

最近在学习rxjava,首先用于联网部分。数据为json格式。
json格式固定为:
{
    "ResultMessage":null,
    "ResultCode":0,
    "Data":{}
}


然后我希望联网返回数据先行进行ResultCode判断

起先我想要在rxjava的“链”中throw 一个自定义的Error,让Subscriber的onError方法捕捉到。结果发现行不通。不允许这样写。

用single操作符,里面写上
.single(new Func1<LevelListBean, Boolean>() { @Override public Boolean call(LevelListBean levelListBean) { if (levelListBean.getResultCode() == Constants.SUCCESS_CODE) { return true; } else { return false; } } }) .doOnError(new Action1<Throwable>() { @Override public void call(Throwable throwable) { LogUtil.d(TAG, throwable.toString()); } }) .retry(2) … 显示全部
默认排序 按时间排序

10 个回答

冰冰 Andorid研发工程师
知乎用户 法师学徒 twiceyuan.com
朱诗雄 Apache Spark / RxJava / RxScala
jtsky 程序猿
ilumer 学生
郭俊新 ``````````````````````````
Kevin Dong 准备学习干货的android开发狗/准备变为谷…

加入知乎

与世界分享你的知识、经验和见解

验证码
已有帐号?
161 人关注该问题