【发布时间】:2018-12-03 21:06:45
【问题描述】:
我不熟悉使用 Alamofire 进行快速操作。我尝试阅读文档,但没有成功。
我正在做一个
Alamofire.request("http:json").responseJSON
我发现,即使手机处于离线状态,它也能正常工作并返回响应。如果我没记错的话,响应会保存在缓存中。
此响应将在缓存中保留多长时间以供用户离线使用?
我应该将响应存储为首选项吗?
感谢您的帮助。
【问题讨论】:
我不熟悉使用 Alamofire 进行快速操作。我尝试阅读文档,但没有成功。
我正在做一个
Alamofire.request("http:json").responseJSON
我发现,即使手机处于离线状态,它也能正常工作并返回响应。如果我没记错的话,响应会保存在缓存中。
此响应将在缓存中保留多长时间以供用户离线使用?
我应该将响应存储为首选项吗?
感谢您的帮助。
【问题讨论】:
你是对的,Alamofire 会缓存你的响应。 虽然,我不认为有办法知道何时您的响应将从缓存中解除,因为系统需要考虑许多变量,例如磁盘空间......您可以使用如果您认为它适合您,可以使用自定义缓存策略。
我不会指望默认缓存策略来保存我的文件以供离线使用,并且在这种情况下实施自定义策略感觉不对。因此,如果您确实需要离线文件,我建议您使用不同的方式。
看看URLCache- 这是 Alamofire 用于响应缓存的东西-
响应缓存由 URLCache 在系统框架级别处理。它提供了一个复合的内存和磁盘缓存,并允许您操作内存和磁盘部分的大小。 -> From Alamofire documentation
【讨论】: