gpt4 book ai didi

java - IllegalStateException in retryWhen with ReadStreamAdapter

转载 作者:行者123 更新时间:2023-11-29 04:52:04 28 4
gpt4 key购买 nike

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

  RxHelper.toObservable(httpClient.request(method, url))

为了获得我可观察到的响应,并且因为 vertx 在内部使用 ReadStreamAdapter 我不能使用 retryWhen 因为它提示

 java java.lang.IllegalStateException: Request already complete

这里是一个代码示例:

  RxHelper.toObservable(httpClient.request(method, url))
.retryWhen(new ServiceExceptionRetry())
.subscribe(f -> replySuccess(eventMsg, event, f), t -> handleError(t, eventMsg, event));

知道如何实现吗?

最佳答案

你可以使用 defermethodclient 每次创建一个 Observable,如下所示:

 Observable.defer(() -> RxHelper.toObservable(httpClient.request(method, url)))
.retryWhen(new ServiceExceptionRetry())
.subscribe(f -> replySuccess(eventMsg, event, f), t -> handleError(t, eventMsg, event));

关于java - IllegalStateException in retryWhen with ReadStreamAdapter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35087712/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com