問題タブ [nsurlcache]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
15341 参照

ios - UIWebView の内部キャッシュを削除する

で Web アプリを表示していUIWebViewますが、ページのコンテンツが変更されることがあります。コンテンツが変更された後、アプリはキャッシュをクリアします。しかし、以前にアクセスしたページに移動するとUIWebView、HTTP GET 要求は送信されず、次のようにキャッシュを無効にしてもキャッシュから読み込まれます。

最初に、リクエストを cachePolicy でロードしていcachePolicy:NSURLRequestReturnCacheDataElseLoadます。

UIWebViewある種の内部キャッシュがあります。既にアクセスしたページは、通過する代わりにこの内部キャッシュから読み込まれ、NSURLCacheリクエストも送信されません。

の内部キャッシュをクリアする方法はありますUIWebViewか? 私も再作成していますUIWebViewが、キャッシュはまだそこにあります。

0 投票する
0 に答える
248 参照

ios - NSURLCache と、メモリを消費し続ける理由を理解しようとしています

私のアプリは、(Web サービスを呼び出す) 多数の URL 要求をループで長時間実行します。Allocations ツールでアプリを見ると、そのループの実行中にメモリ消費量が継続的に増加していることがわかります。テスト目的で、ループを次のように縮小しました。これは同じ動作を示します。

この問題を最初に発見したとき、URL 要求/応答がキャッシュされていたためだと考えました。そのとき、 を追加しました[[NSURLCache sharedURLCache] removeAllCachedResponses]。私は、Web サービスを呼び出すたびにキャッシュをクリアし、URL キャッシュの目的で使用されているメモリを解放することを期待していました。運がない。

私は何か間違ったことをしているに違いありませんが、それを見つけることができません。URL キャッシュだと思って間違ったツリーを鳴らしているのでしょうか? 他に何がありますか?

0 投票する
0 に答える
412 参照

ios - AFNetworking で間違った画像がキャッシュされる

UIImageView+AFNetworkingテーブルビューでリモートサーバーから画像をロードするために使用しています。ただし、場合によっては、間違った画像がキャッシュされます (NSURLCacheだけでなく にもAFImageCache)。つまり、URL からのキャッシュが別の URL からの応答を返します (両方ともアプリで使用されます)。

tableView:cellForRowAtIndexPath:はかなり普通です:

}

また、私のカテゴリNSMutableURLRequestはリクエストの作成に使用されます:

dictそれが現在のオブジェクトであり、URL も問題ないことはわかっています。また、サーバー (Amazon S3) が正しいイメージを送信していることも信頼しています。

この問題は、アプリの最初のインストール時に発生することがよくあります (おそらく、画像が後でキャッシュされるためです)。

何かご意見は?

0 投票する
2 に答える
1494 参照

ios - iOS 7 で NSURLCache がキャッシュされたデータを保存しない

以下のコードは iOS 6 では動作しますが、iOS 7 では動作しません。

iOS 6 ではキャッシュされた応答データを取得していますが、iOS 7 では null を返します。以下を使用して、Appデリゲートに NSURLCache オブジェクトを設定しました。

iOS 7 でキャッシュが機能しない理由は何ですか?

0 投票する
2 に答える
1748 参照

ios - iOS REST 呼び出しとキャッシュ戦略

REST ベースの iOS アプリのさまざまな画面を通過するときに最高のユーザー エクスペリエンスを提供するために、過去にいくつかの異なる戦略を使用してきました。

  • NSURLCache の活用: これは特定のユース ケースでは問題なく機能しますが、「API の呼び出し中にすぐにキャッシュを表示し、必要に応じて新しいデータで画面を更新する」という方法にもっと興味があります。NSURLCache は、さまざまなポリシーに応じて、フォームキャッシュの読み取りまたはリモートからの読み取りなどのオプションのみを提供するようですが、キャッシュから読み取り、リモートから読み取ることはできません。
  • コア データの活用: Restkit、AFIncrementalStore、またはカスタム フレームワークのいずれかを使用して、呼び出し中にコア データからデータを取得するという考え方です。呼び出しが戻ると、コア データが最新のデータで更新され、インターフェイスが更新されます。うまく機能しますが、多くの構成とメンテナンスが必要であり、高度な複雑さが追加されます。これは、オフライン モードが必要な場合に適したオプションですが、キャッシュのみが必要な場合は、やり過ぎに見えます。-

コアデータを必要とせずに、これに対して別のアプローチを取っている人や、高度なキャッシュ機能を提供する軽量ライブラリを推奨している人はいますか?

0 投票する
1 に答える
744 参照

ios - NSURLRequestReturnCacheDataElseLoad が機能しない?

NSURLRequestReturnCacheDataElseLoad を使用しましたが、機能しません。つまり、受信したデータが異なるたびにサーバーからデータをロードします。

私はそれを疑問に思っています:

  1. NSURLRequestReturnCacheDataElseLoad ポリシーを使用しても、有効期限を無視するというドキュメントに関係なく、サーバーの応答からのキャッシュ制御ヘッダーにも従いますか?

  2. のストレージ ポリシーは何[NSURLCache sharedURLCache]ですか? メモリ内のみの場合、次にアプリを起動すると、ディスクにキャッシュがありませんか?

  3. これは非常に興味深いと思いました:

最初のリクエストで NSURLRequestReturnCacheDataElseLoad がキャッシュから読み込まれませんか?

それは言う

この問題は、URL にクエリがある場合にのみ発生するようです。

それは確認済みの問題ですか?

ありがとう