【读书笔记】iOS网络-错误处理的经验法则

时间:2024-10-13 21:36:56

一,在接口契约中处理错误。

二,错误状态可能不正确。

设备模糊地确认操作是崇拜失败的。比如,移动应用发出HTTP请求以在两个账户间转账。请求被银行系统接收并正确地处理;然而,由于网络失败应答却丢失了,NSURLConnection报告超时。超时发生了,但却是在转账请求成功之后发生的。如果重试该操作,就会导致重复转账,可能会造成用户透支。

三,验证负载。

JSON和XML就具备了验证机制的负载格式,不过,以逗号分隔的值文件与HTML就没有这种机制。

四,分离错误与正常的业务状况。

五,总是检查HTTP状态。

六,总是检查NSError的值。

七,使用一致的方法来处理错误。

八,总是设置超时时间。

在iOS中,HTTP请求的默认超市时间是4分,这对于移动应用来说过长了。大多数用户都不会在任何应用中等待4分钟。开发者需要选择合理的超时时间,方式是

评估网络请求的可能响应时间,然后将最差的网络场景下的网络延迟考虑进去。

参考资料:《iOS网络高级编程-iPhone和iPad的企业应用开发》