iOS:AFNetworking 的 AFHTTPSessionManager 缓存策略

标签 ios caching afnetworking nsurlsession nsurlcache

我有一个 AFHTTPSessionManager 的标准子类。我通过提供我需要的 session 配置来使用 initWithBaseURL:sessionConfiguration: 初始化程序。我在配置中设置了 requestCachePolicy 变量,目的是让所有请求都遵循给定的缓存策略。但是,如果我要检查任何 NSURLSessionDataDelegate 回调方法的请求策略,它不会设置为配置中的值。为了解决这个问题,我需要设置 session 管理器的 requestSerializercachePolicy 变量。

似乎当 AFNetworking 创建 NSURLRequest 对象时,它没有使用 session 配置对象中设置的缓存策略值。也就是说,在 session 配置上设置 cachePolicy 而不是 requestSerializer 的原因是什么?

这是 AFNetworking 2.0 中的错误或不完整的功能,还是我在这里遗漏了什么?

最佳答案

AFHTTPSessionManager 使用 cookie 来缓存请求。

只需删除 cookie。

NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
    for (NSHTTPCookie *cookie in [storage cookies]) {
        [storage deleteCookie:cookie];
    }

关于iOS:AFNetworking 的 AFHTTPSessionManager 缓存策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32381386/

相关文章:

ios - iOS Objective C 中的错误域=NSURLErrorDomain 代码=-1012 "(null)"

ios - 如何改变UIView中所有文字的文字颜色?

ios - 用于与 RestKit 0.20.1 进行 CoreData 映射的网络连接委托(delegate)?

ios - 将 subview Controller 链接到 Storyboard中的父 View Controller

java - 整数包装对象仅在值 127 内共享相同的实例?

ios - AFNetworking 3.0 AFURLResponseSerialization 缺失

ios - UIPickerView 显示错误的标题

java - 如何确保多个 Guava 缓存不互相锁定?

java - 如何停止 LOCAL Ignite 缓存的 "Ignoring query projection"警告

iphone - AFImageRequestOperation 产生错误