首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Rx-Android和Retrofit的嵌套网络呼叫

使用Rx-Android和Retrofit的嵌套网络呼叫
EN

Stack Overflow用户
提问于 2019-06-26 11:47:44
回答 2查看 500关注 0票数 0

我在一个应用程序上工作,我曾经使用Rx-android和Retrofit来做网络请求,但现在项目中有一个要求,我必须做嵌套的网络呼叫。我试图谷歌它,但没有发现任何好的article.If任何人已经在这个主题上工作,然后请让我知道你的发现。

EN

回答 2

Stack Overflow用户

发布于 2019-06-26 11:51:56

假设您使用的是rxjava适配器的改进:

代码语言:javascript
复制
fun firstRequest(): Single<Response<String>>

fun secondRequest(idFromFirstRequest: String): Single<Response<ResponseBody>>

使用flatmap操作员链接网络呼叫:

代码语言:javascript
复制
firstRequest()
  // do more operators on the request, like transforming the object, or showing it first on the ui
  .flatMap { stringId -> secondRequest(stringId) }
  // you can flatMap here again to chain another network requests
  // .flatMap { thirdRequest() }
  // .flatMap { fourthRequest() }
  // and so on...
票数 1
EN

Stack Overflow用户

发布于 2019-06-26 12:49:26

有各种与API链接相关的文章,最简单的实现方法是使用Rx-Java方法

1)使用RxJava压缩运算符的(用于并行请求)

2)使用RxJava flatMap() 运算符(依次串行请求)

有关更详细的示例,请参阅这两个链接

Synchronizing Network Calls With RxJava

Multiple api request using retrofit and rx java

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56764884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档