11

ファイルが(manifest.cacheファイルに)キャッシュされるかどうか/どのようにキャッシュされるかを指定するHTML5機能を利用する場合、ディレクトリ全体を指定することは可能ですか?CACHE:セクションの下に自分の画像ディレクトリへのパスを配置して、そのディレクトリ内のすべてのファイルに適用することはできますか、それともキャッシュする画像ファイルを明示的に指定する必要がありますか?

言い換えれば、これは可能ですか?

CACHE MANIFEST

...

CACHE:
images/

...または多分これ?

CACHE MANIFEST

...

CACHE:
images/*

...または私はこれをしなければなりませんか:

CACHE MANIFEST

...

CACHE:
images/logo.png
images/image01.jpg
images/image02.jpg
images/image03.jpg
... (etc)
4

2 に答える 2

15

残念ながら、3 番目の例が正しい例です。すべてのファイルを個別にリストします。質問が投稿された時点でhtml5 医師の記事は正しくなく、その後修正されました。
ワイルドカード * は、「オンライン ホワイト リスト」セクションでのみ使用できます。

NETWORK:
*

これにより、(通常どおり) まだダウンロードされていない場合、オンラインで閲覧しているときに必要なファイルをダウンロードできます。
フォールバック セクションの「ページ パス パターン」もあります。

FALLBACK:
/ /offline.html

それは一種のワイルドカードのように機能します。最初の / は、サイトのすべてのページへのパスと一致するため、キャッシュに見つからないページは /offline.html を代わりのフォールバックとして使用します。(2 つのスラッシュの間のスペースに注意してください。)

于 2012-04-12T18:04:44.330 に答える
1

PHPファイルを使用して.manifest(または例では.cache)ファイルを作成することで、「ワイルドカード」を実現できると思います。このようにして、ディレクトリをスキャンして各ファイル名をエコーすることにより、PHP にファイル名を維持する手間を処理させることができます。実際に PHP に .manifest ファイルをサーバーに配置させるのがおそらく最善です。そうしないと、オフライン アプリがマニフェスト ファイルが更新され、継続的にキャッシュを更新したと見なす可能性があります。

于 2013-01-16T15:56:39.027 に答える