我测试没有互联网访问的边缘情况。 当我打电话
Observable<SomeResponse> responseObservable = client.getMethodNameRedacted("string");
当在拦截器内的请求链中继续时,Retrofit会抛出以下错误:
V/CustomLoggingInterceptor$Logger: <-- HTTP FAILED: java.net.UnknownHostException: Unable to resolve host "{redacted}": No address associated with hostname
所以我无法处理observable中的错误。
有没有办法包装observable来处理这个错误?
编辑: 日志记录拦截器只是一个稍微修改过的OkHttpLoggingInterceptor,用于按内容类型过滤日志记录。它根本不会影响请求链。
答案 0 :(得分:0)
将响应对象包装在实际的Response对象中