我有一个API,可以让我检索这样的对象:
Answer from API
{
currentPage = some_int;
maxPage = some_int;
List<String> items; //items on page
}
我有一些RestApiService,其方法是getItems(页面),返回
Observable<Answer from API>
如何从服务器获取所有页面的问题?
答案 0 :(得分:0)
这个代码库示例应该可以解决这个问题
@Test
public void repeat() {
int maxPage = 10;
int[] arrayPages = IntStream.range(0, maxPage).toArray();
List<Integer> pages = IntStream.of(arrayPages).boxed().collect(Collectors.toList());
Observable.from(pages)
.map(this::getItemsApi)
.toList()
.subscribe(list -> System.out.println("All items:" + list));
}
public String getItemsApi(int page) {
return "Items form page " + page;
}
无论如何,您应该尝试避免复制/粘贴代码而不了解其工作原理。您可以在这里看到一些关于RxJava https://github.com/politrons/reactive
的实际示例和一些文档