改造2& Rxjava2如何获取方法OnError中的URL(Throwable e)

时间:2017-12-27 09:32:45

标签: android retrofit2

我最近开始使用Rxjava2和Retrofit2,然后我想找到一种方法来创建方法onNext(Response t)和onError(Throwable e)的统一回调。 我可以通过t.response().raw().request().url()获取onNext(响应t)中的Url。但我无法在onError(Throwable e)中找​​到相同的方法。我应该这样做吗?

1 个答案:

答案 0 :(得分:0)

据我所知,如果throwableHttpException,则只有在调用返回2XX以外的状态时才会出现此情况。

在这种情况下,您可以从throwable获取响应,并从那里获取URL。

以下是一种方法:

void onError(Throwable throwable) {
   if( throwable instanceof HttpException) {
     HttpUrl url = ((HttpException) throwable)
                       .response()
                       .raw()
                       .request()
                       .url();
     // ...
   }
     // ...
 }

此处有关HttpException

的信息