Rxjava链条不止一个请求
我是RxJava的新概念。 我想链的一些电话:Rxjava链条不止一个请求
Observable<RoomList> listRoomsCall = mRoomServiceApi.listRooms();
//这个调用会让我RoomIds 下一步就是要求所有RoomIds - 请求后要求
mMeetingServiceApi.listMeetings(roomID, startsAtString, endsAtString, free))
我应该如何连锁第一个电话接下来的电话?
我认为我应该使用flatMap
和循环来调用所有的请求,但如何连接所有的响应?
listRoomsCall.flatMap(v -> { for (ExchangeRoom exchangeRoom : v.getExchangeRoomList()) {
mMeetingServiceApi.listMeetings(roomID, startsAtString, endsAtString, free);
}
})
回答:
再次打开内部列表为Observable
和flatMap
了它:
listRoomsCall .flatMapIterable(v -> v.getExchangeRoomList())
.flatMap(exchangeRoom -> {
mMeetingServiceApi.listMeetings(roomID, startsAtString, endsAtString, free);
})
.subscribe(/* */);
或
listRoomsCall .flatMap(v ->
Observable.fromIterable(v.getExchangeRoomList())
.flatMap(exchangeRoom -> {
mMeetingServiceApi.listMeetings(roomID, startsAtString, endsAtString, free);
})
)
.subscribe(/* */);
以上是 Rxjava链条不止一个请求 的全部内容, 来源链接: utcz.com/qa/263315.html