3

電話する

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

cachePolicyがNSURLRequestReloadIgnoringLocalCacheDataに設定されたリクエストで

この呼び出しは応答をキャッシュしますか? もしそうなら、どうすればそれが起こらないことを保証できますか? キャッシュから何も取得しないことはわかっていますが、何も残さないようにしたいと思います。決定的な答えは見つかりませんでした。

4

1 に答える 1

2

簡単なテストでは、結果が通常どおりキャッシュされているように見えることが示されています。

キャッシュを完全に回避する方法は、 connection:willCacheResponse:から戻るNSURLConnectionDataDelegateデリゲートを実装し、代わりに[NSURLConnection connectionWithRequest:delegate:]を使用してデリゲートを使用してリクエストを送信することです。nil

キャッシュするかどうかを自分でテストするには、キャッシュを無効にしてブレークポイントを設定する上記の方法を試して、connection:willCacheReponse:呼び出されるかどうかを確認します。呼び出された場合、通常、リクエストはキャッシュされます。

于 2013-01-07T20:03:10.990 に答える