关于上篇文章的okhttp中对于onFailure回调的异常捕获

@Override
public void onFailure(Call call, IOException e) {
        if (e instanceof SocketTimeoutException) {
            // 重新提交验证   在这里最好限制提交次数
            client.newCall(call.request()).enqueue(this);
        }
        if (e instanceof ConnectTimeoutException) {
            Log.e("frost_connection",e.getMessage());
        }
}

SocketTimeoutException造成的原因是服务器响应超时

ConnectTimeoutException造成的原因是服务器请求超时

对应SocketTimeoutException解释为:服务器已经收到了请求,但是在做出响应的时候超时了,就会导致OKhttp回调onfailure方法,在这个时候,应该重新请求验证服务器是否做出更新。如果已经做出更新则为成功。

对应ConnectTimeoutException解释为:请求服务器超时,服务器并未收到来自客户端的请求。
————————————————
版权声明:本文为CSDN博主「android_frost」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/androidisgod/article/details/103986220

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

android_frost

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值