我在我的项目中使用Retrofit 2.0和Observable接口以及Result包装器。 方法:
Observable<CompanyModel> companyList(@Query("userAcc") String userAcc,
@Query("password") String password);
代码:
RetrofitHelper.getCompanyList(userName, password).subscribe(new Observer<CompanyModel>() {
@Override
public void onCompleted() {
System.out.println("Observable completed");
}
@Override
public void onError(Throwable e) {
System.out.println("Observable error");
}
@Override
public void onNext(CompanyModel companyModel) {
List<Company> company = companyModel.getCompany();
System.out.println("Observable next");
}
});
我希望在发生错误时得到响应,但是onError返回Throwable。 我怎样才能得到答复?
答案 0 :(得分:1)
我认为您可以将模型包装在内部将Observer声明更改为Observable<Response<CompanyModel>>
并获取错误errorBody()
如需其他参考,您可以查看this github issue