有大量资源可用于检查 Swift 的有效互联网连接(可达性),以及在进行 API 调用时检查 httpResponse 的 statusCode 的方法,但检查和处理这些问题的“正确”方法是什么处理 API 密集型 iOS 应用程序时出现错误(无法访问互联网、服务器 404)?
例如,当应用程序在初始 View (或我认为的 AppDelegate)中启动时,可以检查两者并重定向到显示消息(或显示警报,尽管这些可以被忽略)的“ServerProblemsViewController”。但是,如果有人正在使用您的应用程序,而互联网掉线或服务器无法访问,会发生什么情况?你会如何处理这个问题?我想知道开发人员是否通常在每个 API 调用之前检查可达性并检查每个 API 调用的返回状态,或者以某种方式将该逻辑封装到辅助函数中?
经验丰富的 iOS 开发者如何处理这种情况?
最佳答案
我检查每次调用的可达性,然后通过将 NSURLResponse 类型转换为 NSHTTPURLResponse(具有 statusCode
属性)来检查响应状态代码。是的,我的请求使用相同的基类来封装所有功能——仅在需要时创建派生类。您可以使用 Apple 的可达性示例代码,该代码已移植到 Swift,通常可以通过社区在 Github 上找到。只需阅读此存储库就可能会回答您有关可达性变化的许多问题。通知 FTW!:https://github.com/ashleymills/Reachability.swift
关于ios - Swift 最佳实践 - 使用 API 时如何/何时检查互联网连接和 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33973162/