URL 読み込みフレームワークを使用して、キャッシュを利用して URL を読み込む方法を見つけようとしています。
私は NSURLConnections を使用しており、それらに NSURLRequests を供給しています。これらのリクエストの cachePolicy を NSURLRequestReturnCacheDataElseLoad に設定しました。初めてリクエストをロードすると、自動的にキャッシュに入れられます([NSURLCache sharedCache]
持っています)。しかし、次に同じリクエストをロードすると、NSURLConnection はキャッシュの内容を無視してデータをリロードするようです。
手動でキャッシュ ルックアップを実装し、キャッシュされたデータを返さなければならないのでしょうか? NSURLConnection はこれを行いませんか? または、フレームワークがキャッシュをシームレスに使用できるようにする方法はありますか?
更新:成功せずに次のことを試しました:
- リクエストキャッシュポリシーを
NSURLRequestReturnCacheDataElseLoad
代わりに設定するNSURLRequestUseProtocolCachePolicy
- 新しいリクエスト オブジェクトを作成する代わりに、リクエスト オブジェクトを再利用する
+[NSURLConnection sendSynchronousRequest:returningResponse:error:]
非同期ロードの代わりに使用