3

我打电话

[NSURLConnection sendAsynchronousRequest:request
                                   queue:queue
                       completionHandler:^(NSURLResponse * response, NSData *data, NSError *error)

请求将cachePolicy设置为NSURLRequestReloadIgnoringLocalCacheData

此调用是否缓存响应?如果是这样,我如何确保它不会?我意识到它不会从缓存中检索任何东西,但我想确保它也不会留下任何东西。我找不到明确的答案。

4

1 回答 1

2

快速测试表明它似乎正常缓存了结果。

完全避免缓存的方法是实现一个NSURLConnectionDataDelegate委托,nilconnection:willCacheResponse:返回,然后使用
[NSURLConnection connectionWithRequest:delegate:]使用委托发送请求。

要自己测试它是否缓存,您可以尝试上述禁用缓存并设置断点的方法connection:willCacheReponse:,看看它是否被调用。如果它被调用,请求通常会被缓存。

于 2013-01-07T20:03:10.990 回答