0

ブラウザーは、Web サイトの読み込み時にキャッシュ マニフェスト ファイルにリストされているすべてのページをキャッシュしますか?それとも、キャッシュする (後でオフラインでアクセスする) ために各ページにアクセスする必要がありますか?

私はそれに関するMDNの記事とこの記事を読みましたが、これは私が取り上げたものです

"any page the user navigates to that include a manifest will be implicitly added to the application cache"

上記から判断すると、キャッシュするには各ページにアクセスする必要があるようです。しかし、これが彼らが伝えようとしていたことなのかどうかはわかりません。

誰かがこれを知っているか経験がありますか?

4

2 に答える 2

0

つまり、キャッシュ マニフェストにリストされているすべてのページは、Web サイトの読み込み時にキャッシュされます。


物事を明確にするために、あなたが言及した文を分析しましょう。それは言います:

マニフェストを含むユーザーが移動するすべてのページは、アプリケーション キャッシュに暗黙的に追加されます。

まず、「マニフェストを含むページ」は、html タグにマニフェスト属性を持つすべてのページです。

<html manifest="example.appcache">
    ...
</html>

このようなページは、「アプリケーション キャッシュに暗黙的に追加」されます。キーワードは「暗黙」です。つまり、マニフェスト ファイルにリストされていなくても、このページはアプリケーション キャッシュに追加されます。

ページをロードすると、このページで参照されているマニフェスト ファイルにあるすべてのページ/リソースがキャッシュされます (それらにアクセスする必要はありません)。

さらに、マニフェストにリストされていないがマニフェスト属性を含むすべてのページはキャッシュされますが、これはそのページにアクセスした場合にのみ発生します。

私の説明が明確でない場合は、短い例を提供できます。

于 2013-10-17T19:23:32.450 に答える
0

アプリケーション キャッシュには、キャッシュ マニフェストで指定されたすべてのリソースが含まれます。それが要点です。ユーザーはそれらを「訪問」する必要はありません。(通常のアクセスでは、通常はブラウザー キャッシュに追加されますが、それはまったく別の問題です。) また、アプリケーション キャッシュは、Web サイトではなくアプリケーションを対象としています。キャッシュ マニフェストが変更された場合にのみ、アプリケーション キャッシュがリロードされます。これは Web サイトにとってはばかげていますが、アプリケーションにとっては非常に理にかなっています。

あなたが引用したMDNページは、引用なしで、アプリケーションキャッシュマニフェストを持つページにアクセスすると、マニフェストで明示的に言及されていなくても、ページ自体がアプリケーションキャッシュに追加されると言っているようです.

于 2013-10-17T19:26:29.967 に答える