首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IllegalStateException中的retryWhen与ReadStreamAdapter

IllegalStateException中的retryWhen与ReadStreamAdapter
EN

Stack Overflow用户
提问于 2016-01-29 15:08:57
回答 1查看 89关注 0票数 1

当对我的外部服务的外部http请求失败时,我使用retryWhen。问题是我在用

代码语言:javascript
复制
  RxHelper.toObservable(httpClient.request(method, url))

为了得到我能观察到的反应,并且因为内部使用ReadStreamAdapter,我不能使用retryWhen,因为它是抱怨的。

代码语言:javascript
复制
 java java.lang.IllegalStateException: Request already complete

这里有一个代码示例:

代码语言:javascript
复制
  RxHelper.toObservable(httpClient.request(method, url))
  .retryWhen(new ServiceExceptionRetry())       
  .subscribe(f -> replySuccess(eventMsg, event, f), t -> handleError(t, eventMsg, event));

知道如何做到这一点吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-29 22:30:27

每次都可以使用defermethodclient创建一个可观察到的:

代码语言:javascript
复制
 Observable.defer(() -> RxHelper.toObservable(httpClient.request(method, url)))
  .retryWhen(new ServiceExceptionRetry())       
  .subscribe(f -> replySuccess(eventMsg, event, f), t -> handleError(t, eventMsg, event));
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35087712

复制
相关文章

相似问题

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