複数のAPI呼び出しを連結する必要があり、retrofit2とrxJavaのオブザーバブルを使用したいと思います。次のように私のシナリオは次のとおりです。Retrofit 2とrxJavaで複数の呼び出しをconcat
私はオブジェクトの配列を返します。最初の呼び出しを行う必要があり、応答のようなものになります。その後、私は、各オブジェクトごとにAPI呼び出しを行う必要があり
[{"title": "Title 1", "id": "1"}, {"title": "Title 2", "id": "2"}]
、だから私はすべてのこれらの呼び出しをCONCAT、すべての情報を持っているでしょう独自のレスポンスオブジェクトでそれをマージしたい
[{"title": "Chapter A", "id": "1A", ...}, {"title": "Chapter B", "id": "1B", ...}, ...]
:そう、各オブジェクトのAPIレスポンスは次のようになります。どうすればいい?どのようにして最初の呼び出しを行い、応答でオブジェクトごとに呼び出しを行い、すべての呼び出しが完了して結果がマージされるまで待つことができますか?
public class TvShow {
public String title;
public Long id;
public List<TvChapter> chapterList;
}
public class TvChapter {
public String title;
public String id;
}
そして、あなたはすでにデータを取得するためのメソッドがあります:ここで
public Observable<List<TvShow>> getShows()
public Observable<List<TvChapter>> getTvChapters(Long tvShowId)
を組み合わせRxJavaストリームが戻っていることである
どうもありがとう
利用zipやcombileLast RxJava – Blackbelt
からはどうもありがとうございましたが、私はそれをどのように行うことができますか?つまり、最初の観測結果をどのように受け取ってから、他の観測対象を作成してその結果を組み合わせることができますか?私はobservablesのリストを取得したらcom zipが使用されると思いますが、どのようにして最初の呼び出しを実行し、応答を解析してobservablesのリストを作成できますか? – FVod