問題タブ [image-caching]

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 に答える
1965 参照

ios - SDWebImage - バックグラウンドに入ったときに画像キャッシュをクリアしないようにする

アプリで使用SDWebImageして、Web から画像を読み込んでキャッシュします。それは魔法のように機能しますが、唯一の問題は、アプリを終了するたびに、たとえ一瞬であっても、画像キャッシュがクリアされ、すべての画像を再度ダウンロードする必要があることです. これは、インターネット接続が遅い場合に特に問題になります。アプリに戻ったときに画像を保持したい。これを達成する方法を知っている人はいますか?

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

android - Picasso 画像読み込みライブラリ、いくつかの問題

ほとんどが特定のビジネスのディレクトリになる小さなアプリを構築しています。すべては REST サービスを通じて取得されます。ビジネスのリストを閲覧しているときに、画像の処理に問題があります。

各リスト項目を構成する画像は、背景 (ビジネスの「バナー」として機能) と、ビジネスが提供する最も重要なサービスを表す最大 5 つの小さなアイコンです。

私は Picasso を使用してこれらの画像を非同期的にロードし始めました。これは、独自のキャッシュを作成しないようにするためです。ただし、いくつかの問題が発生しました。

A) 最大の問題は、ローエンドの電話 (Android 2.2 を実行している LG Optimus V) で、背景/バナーが常にロードに失敗することです。背景の読み込みに失敗したときに Picasso の error() オプションを使用してプレースホルダー ドローアブルを読み込みますが、すべての背景が読み込みに失敗し、その理由がわかりません。これについて私が気づいたこと:

  • 小さなアイコンは問題なく読み込まれます
  • Picasso からの onImageLoadFailed コールバックは、実際にはトリガーされません。しかし、error() で指定したプレースホルダーは読み込まれます。
  • リモートではなくローカルにある場合、これらのバナー (同じアセット サイズ) を完全にロードできるため、メモリは問題ではないようです。
  • この問題は、2.3 を実行している Droid X といくつかのハイエンド デバイスでは発生しません。

B) すべてのデバイスで、サービス アイコンもバナーもディスクにキャッシュされないように見えます (Picasso デバッグ モードでは、常に最初にリモート ソースから読み込まれ、その後メモリから読み込まれることを示します)、Picasso はこれを自動的に行うことになっています。設定が不足しているかどうかはわかりません。

実際、サービス アイコンは、リスト (ビジネス) アイテム間で頻繁に繰り返されるため、アプリの開始時にプリフェッチできれば最適です。可能なサービスのリストはいつでも増加する可能性があり、そのため、より多くのアイコンが定期的に発生するため、ローカル アセットにすることはできません。しかし、アクティビティの開始時に、サービスのリストを照会し (そのための REST ポイントが既にあります)、すべてのアイコンをプリフェッチしてキャッシュできれば素晴らしいと思います。これを行う「簡単な」方法はありますか?

これらの問題についてご指導いただきありがとうございます。

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

android - Android 画像キャッシュ用の超高速ライブラリ

非常に高速な Android 画像キャッシュ ライブラリを探しています。メモリとディスクのキャッシュをサポートし、再利用可能なビュー (ListView や GridView など) でも正常に動作する必要があります。

と を使ってみましたPicassoUniversalImageLoader、もっとスピードを上げたいです。古いデバイスでは、GridView の動作が遅くなります。問題はレイアウトの最適化や重いgetView(int, View, ViewGroup)方法ではなく、まさに画像キャッシュにあります。

それでは、あなたの経験に基づいて私に何をアドバイスできますか?

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

node.js - node.js: 正しいヘッダーを使用したブラウザー イメージのキャッシュ

大量の画像を管理し、保存してサイズ変更する Web アプリケーションを開発しています。

画像のリクエストは次のようなものです: domain:port/image_id/size

サーバーは image_id を受け取り、そのようなサイズのイメージがまだない場合は、それを作成してファイルシステムに保存します。

したがって、すべて問題なく、サーバーは実行されていますが、サーバーの帯域幅の消費を減らすために、これらの画像を少なくとも 1 日間ブラウザーにキャッシュする必要があります。

いくつかのテストを行いましたが、何も機能していないようです。

応答ヘッダーを作成するために使用するコードは次のとおりです。

レスポンス ステータス 200 も試しました。 contentType は常に "image/jpg" や "image/png" のような MIME タイプです。

何かアドバイス?どうもありがとう。

長く生きると繁栄、

d.

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

cdn - ImageResizer サイズ変更された画像と CDN

CDN に対してサイズ変更された画像のリクエストが行われた場合、同じ画像で異なるサイズの 2 回目のリクエストでは、キャッシュされた画像が返されないと想定してもよろしいですか?

例えば

  • 最初のリクエスト:myphoto.jpp 100x200
  • 2 番目の要求:myphoto.jpg 200x400

上記は、私の ImageResizer サーバーに 2 つのヒットをもたらしますよね? これは私の推測です。

質問をする別の方法は、CDN が URL 全体を考慮するのか、それとも要求されている画像だけを考慮するのかということだと思います。

どんなガイダンスも大歓迎です。

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

php - 介入 画像とキャッシュ ブラウザ / Laravel 4

私はIntervention Imageとキャッシュ用の彼の拡張機能を使用しています。 Intervention Image Cacheかなりうまく機能します。

私ができるようにしようとしているのは、ヘッダーと介入を使用してブラウザーに画像をキャッシュすることです。

それを達成するための最良の方法はどれですか?

ルートがあるとしましょう。それは、次のように画像を表示するための応答を処理するメソッドをコントローラーにフックしました。