ios – 可访问性与NSURLSession响应以检测互联网连接

ios – 可访问性与NSURLSession响应以检测互联网连接,第1张

概述我正在为我的API调用构建错误案例,并希望检查互联网连接不可用时的情况. dataTaskWithRequest似乎处理这个很好,并返回一个NSError,代码为-1009,描述没有互联网连接.我不必等待请求超时. 在什么情况下我想要使用Reachability Framework? 谢谢 我做了一些研究,并在Apple Docs中找到了答案. 建议的最佳做法是尝试连接.如果连接存在问题,它会为您 我正在为我的API调用构建错误案例,并希望检查互联网连接不可用时的情况.

dataTaskWithRequest似乎处理这个很好,并返回一个NSError,代码为-1009,描述没有互联网连接.我不必等待请求超时.

在什么情况下我想要使用Reachability Framework?
谢谢

解决方法 我做了一些研究,并在Apple Docs中找到了答案.

建议的最佳做法是尝试连接.如果连接存在问题,它会为您提供一个NSError对象,您应该使用它来测试连接.

Apple建议仅​​将Reachability用作诊断错误和进一步调试已知问题的方法.您似乎只应使用可访问性来检测网络在发生故障后何时重新联机.

“总是尝试建立连接.不要试图猜测网络服务是否可用,并且不要缓存该决定.

如果连接失败,请使用SCNetworkReachability API来帮助诊断故障原因.“

资源 :
https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/WhyNetworkingIsHard/WhyNetworkingIsHard.html#//apple_ref/doc/uid/TP40010220-CH13-SW3

“当任何任务完成时,NSURLSession对象使用错误对象或nil(如果任务成功完成)调用委托的URLSession:task:dIDCompleteWithError:方法.

如果任务失败,大多数应用程序应重试请求,直到用户取消下载或服务器返回错误,指示请求永远不会成功.但是,您的应用不应立即重试.相反,它应该使用可访问性API来确定服务器是否可访问,并且只有在收到可访问性已更改的通知时才应发出新请求.

资源:

https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/URLLoadingSystem/NSURLSessionConcepts/NSURLSessionConcepts.html

总结

以上是内存溢出为你收集整理的ios – 可访问性与NSURLSession响应以检测互联网连接全部内容,希望文章能够帮你解决ios – 可访问性与NSURLSession响应以检测互联网连接所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1101731.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-28
下一篇2022-05-28

发表评论

登录后才能评论

评论列表(0条)

    保存