2017-12-27 30 views
0

최근에 Rxjava2 및 Retrofit2를 사용하기 시작했습니다. 그런 다음 onNext (Response t) 및 onError 메서드에 대한 통합 콜백을 만드는 방법을 찾고 싶습니다. (Throwable e). URL을 onNext (Response t)에 t.response().raw().request().url()으로받을 수 있습니다. 하지만 onError (Throwable e)에서 같은 방법을 찾을 수 없습니다. 그래서 와트해야합니까?Retrofit2 & Rxjava2 메서드 OnError (Throwable e)

+0

에 대한 정보입니다 :

는 여기에 한 가지 방법입니다. 내가 이해할 수있는 것은 당신이 모든 개조 호출을 처리하기 위해 하나의 관찰자가 필요하다는 것입니다. –

답변

0

내가 아는 한 throwableHttpException 인 경우에만 전화를 걸 수 있습니다. 전화가 2XX가 아닌 상태 인 경우에만 발생합니다.

이 경우 throwable에서 응답을 얻을 수 있고 거기에서 URL을 얻을 수 있습니다.

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

다음은 제대로 요구 사항을 설명해주십시오 수 HttpException