首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >AFNetworking -不缓存响应

AFNetworking -不缓存响应
EN

Stack Overflow用户
提问于 2013-11-24 02:26:58
回答 7查看 17.4K关注 0票数 17

我使用以下代码从服务器中提取一个简单的JSON提要:

代码语言:javascript
复制
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
    manager.responseSerializer = [AFJSONResponseSerializer serializer];

[manager GET:kDataUrl parameters:nil
 success:^(AFHTTPRequestOperation *operation, id responseObject) {
     NSLog(@"response: %@", responseObject);
 }
 failure:^(AFHTTPRequestOperation *operation, NSError *error) {
     NSLog(@"JSON DataError: %@", error);
 }];

它起作用了。但是,当我在kDataUrl上更改了JSON文件,并验证了更改是在浏览器中进行的,当我再次运行应用程序时,我仍然得到以前的响应。

似乎AFNetworking以某种方式缓存了旧的响应。我不想要这种行为。我想下载当前的订阅源。是否需要设置某种类型的设置或参数来关闭缓存?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2014-05-12 16:56:10

长话短说,只需定义您的AFNetworking管理器:

代码语言:javascript
复制
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager.requestSerializer setCachePolicy:NSURLRequestReloadIgnoringLocalCacheData];

享受吧!

票数 60
EN

Stack Overflow用户

发布于 2016-02-20 00:27:19

只需这样做:

代码语言:javascript
复制
manager.requestSerializer.cachePolicy = NSURLRequestCachePolicyReturnCacheDataElseLoad
票数 1
EN

Stack Overflow用户

发布于 2016-02-27 08:45:13

对于Swift poeple

代码语言:javascript
复制
let manager = AFHTTPSessionManager()
manager.requestSerializer.cachePolicy = NSURLRequestCachePolicy.ReloadIgnoringCacheData
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20166148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档