我最近开始使用Rxjava2和Retrofit2,然后我想找到一种方法来创建方法onNext(Response t)和onError(Throwable e)的统一回调。
我可以通过t.response().raw().request().url()
获取onNext(响应t)中的Url。但我无法在onError(Throwable e)中找到相同的方法。我应该这样做吗?
答案 0 :(得分:0)
据我所知,如果throwable
是HttpException
,则只有在调用返回2XX以外的状态时才会出现此情况。
在这种情况下,您可以从throwable获取响应,并从那里获取URL。
以下是一种方法:
void onError(Throwable throwable) {
if( throwable instanceof HttpException) {
HttpUrl url = ((HttpException) throwable)
.response()
.raw()
.request()
.url();
// ...
}
// ...
}
此处有关HttpException
的信息