簡體   English   中英

Android循環調用Rest API

[英]Android call Rest API in a loop

我是android新手,所以對api調用有一些疑問。

目前,我使用Retrofit完成我的api調用。

這是經過改造的我的api調用示例

@POST("posts/new")
fun createPost(@Body post: Post, @Header("Authorization") token: String): Single<PostResult>

因此,假設我有10個帖子,並且我需要調用createPost 10次​​(是的,我知道我可以在BE端輸入list ,但是...)。 最好的方法是遍歷帖子( for/map )並將其發送到服務器。

但是這里有問題:
-如何跟蹤所有通話已完成?

在JS中我可以有類似Promise.all東西-我可以在android中做類似的事情嗎?

我考慮過計算已完成的請求與已開始的請求,但我認為這有點丑陋嗎?

感謝@shkschneider

您的問題很廣泛。 您可以使用RxJava進行壓縮,或使用協程進行異步/等待或其他方法。

最終使用了.zip

Single.zip(observables) { args -> args }
      .subscribeOn(Schedulers.io())
      .observeOn(AndroidSchedulers.mainThread())
      .subscribe({ ...Success }, { ...Failure })

為了使響應成功,您需要再次調用get / post方法。 成功后,您知道您的api調用已完成,否則會引發錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM