如何从 AFNetworking 禁用缓存

Posted

技术标签:

【中文标题】如何从 AFNetworking 禁用缓存【英文标题】:How to disable caching from AFNetworking 【发布时间】:2014-12-20 16:52:37 【问题描述】:

我正在使用 AFNetworking 2.0 接收来自服务器的响应。对于第一个响应,它工作正常。但是,在我更改管理站点上的数据并验证更改是在浏览器中进行后,我再次运行该应用程序,但仍然得到之前的响应。我不明白为什么?似乎 AFNetworking 正在缓存旧响应。我想下载当前的提要。谁能帮帮我????

【问题讨论】:

【参考方案1】:

我遇到了完全相反的问题。我两次从我的服务器获取相同的图像,AFNetworking 没有缓存。当我调试它时,我意识到我正在调用 2 个略有不同的 URL,在一种情况下,我指定了一个服务器上的默认选项。

所以这给了我为你解决黑客问题的想法。这不是正确的答案,但它应该有效。只需将一个无用的参数传递给服务器。为每个服务器调用更改此参数。

https://example.com/myrequest?index=0

然后

https://example.com/myrequest?index=1

其中 index 是未使用的参数。

注意:这实际上是一个非常粗暴的 hack,它应该能让你跑起来,但你真的应该找到“正确”的答案。

【讨论】:

以上是关于如何从 AFNetworking 禁用缓存的主要内容,如果未能解决你的问题,请参考以下文章

IOS AFN (第三方请求)

AFNetworking 3.0 使用详解 和 源码解析实现原理

AFN3.0封装

AFN2.0到3.0的迁移

iOS开发之AFN的基本使用

AFNetWorking 网络请求转载