当我请求api时,服务器将在10秒后发送响应。
当客户端收到响应后,我必须立即请求返回 api。
像这样。
fun getSampleApi() {
sampleApiService.requestApi(
Params()
) // Observable
.toFlowable()
.delay(3, TimeUnit.SECONDS)
.distinctUntilChanged()
.subscribeOnIo()
.observeOnIo()
.subscribeBy(onNext = { streamResult ->
getSampleApi() // recurse
}, onError = {})
}
当我从服务器收到 200 响应时,我打算立即请求 api(递归地。也许这导致了问题。)。
这段代码的问题是,有非常多的重叠 api 请求。
我怎样才能按顺序进行此操作,而不会出现重叠的请求?使用 RxKotlin 或 RxJava。