使用Java中的RxJava2编写后续API请求

时间:2018-01-15 06:20:37

标签: java android asynchronous rx-java2

我需要在Android项目中编写后续请求。因此,首先发出API请求,当异步响应返回时,响应将在第二个请求中使用,依此类推。

我一直在研究RxJava2库但我还没有完全理解它。此外,RxJava代码将在Interactor类中,它将调用驻留在存储库中的函数,因此我不想直接在RxJava2代码中编写代码,而是从另一个类调用函数。覆盖这些区域的GitHub仓库对我来说非常有用。

1 个答案:

答案 0 :(得分:3)

flatMap运算符是一种规范的方法,用于指定依赖于前一个源的结果的延续:

retrofitAPI.getData(params)
.flatMap(data -> 
     retrofitAPI.getMoreData(data)
     .flatMap(moreData -> retrofitAPI.getEvenMoreData(data, moreData))
)