Android 如何在RxJava2中组合多个请求?
我想使用rxjava2来获取我的ip地址,我请求2api(因为有时候api是错误的) 我想:Android 如何在RxJava2中组合多个请求?,android,rx-java2,Android,Rx Java2,我想使用rxjava2来获取我的ip地址,我请求2api(因为有时候api是错误的) 我想: 获取返回的第一个成功请求的结果 请求失败时不要跳转到错误 如果两个请求都失败,它将获得默认值 我该怎么办。请帮帮我。 实现您所描述的目标有多种方法,其中一种方法是: getIpV1() .onErrorResumeNext( getIpV2().onErrorReturn(defaulValue) ) 在这里,请求将一个接一个地运行 要使它们并行运行,请参见combinelatet
- 获取返回的第一个成功请求的结果
- 请求失败时不要跳转到错误
- 如果两个请求都失败,它将获得默认值
getIpV1()
.onErrorResumeNext(
getIpV2().onErrorReturn(defaulValue)
)
在这里,请求将一个接一个地运行
要使它们并行运行,请参见combinelatetest()
或zip()
谢谢@LordFlash,我会检查你的答案和反馈:)非常感谢@LordFlash
s1 = getIpV1().onErrorReturn(defaulValue)
s2 = getIpV2().onErrorReturn(defaulValue)
Observable.zip(s1, s2, {s1, s2 -> TODO("merge")})