没有缓存的iOS NSURLSessionConfiguration无法按预期工作

时间:2014-07-24 12:15:54

标签: ios security nsurlsession nsurlsessionconfiguration

我在iOS7中遇到安全问题。我想通过执行以下配置来建立我的url连接而不进行任何缓存:

+(NSURLSessionConfiguration *)createSessionConfig {

    NSURLSessionConfiguration *sessionConfig =
    [NSURLSessionConfiguration ephemeralSessionConfiguration];

    sessionConfig.allowsCellularAccess = YES;
    sessionConfig.timeoutIntervalForRequest = 30.0;
    sessionConfig.timeoutIntervalForResource = 60.0;
    sessionConfig.HTTPMaximumConnectionsPerHost = 10;
    sessionConfig.URLCache = nil;
    sessionConfig.URLCredentialStorage = nil;
    sessionConfig.HTTPCookieStorage = nil;

    return sessionConfig;
}

当我运行NSURLSessionDataTask时,仍然在文件系统上创建了带有条目的文件Cache.db-wal。

有谁能告诉我如何解决这个问题?我想在文件系统的缓存文件中没有条目。

BR, 马丁

1 个答案:

答案 0 :(得分:0)

我需要做一些非常相似的事情。我使用defaultSessionConfiguration而不是将配置实例设置为短暂的会话。短暂会话缓存到RAM而不是磁盘。因此,通过将所有不同的持久性缓存属性设置为nil并使用默认会话,它可以根据需要进行操作。