3

ブラウザでページキャッシュを強制する方法を知っている人はいますか? ページを数回リロードする必要がありますが、ブラウザがページをキャッシュしていません!

4

3 に答える 3

7

ブラウザがページをキャッシュしていない場合、次のいずれかを使用する以外にできることはありません。

<meta http-equiv="Cache-control" content="public">

また

<meta http-equiv="Cache-control" content="private">

ブラウザーの設定をプログラムでオーバーライドすることはできません。セキュリティの問題でしょう!

于 2013-09-27T20:23:39.327 に答える
1

持っている場合でも、<meta http-equiv="Cache-control" content="public">考慮すべき他の要因があります。

一部のブラウザでは、キャッシュのファイル サイズに制限があることに注意してください...可能な場合は html を 25Kb 未満に保ち、css、js などの外部リソースを 1Mb 未満に保ちますが、ブラウザ固有の情報については、こちらこちらを参照してください。

ファイルのサイズを事前に計算できない場合はbrowser.cache.disk.max_entry_size、一部のブラウザで確認して、長さを概算できます。document.getElementsByTagName('html')[0].outerHTML.length

サーバーは「Last-Modified」と「Expires」を適切に設定する必要があります

これは、キャッシュが有効になっている場合にのみキャッシュの可能性を高めますが、強制することはありません。ローカル ストレージが有効になっていて、キャッシュが無効になっている場合は、ローカル ストレージの使用を検討してください (1 つの特定のサイトに対処するために、キャッシュを完全に無効にする人もいます)。

于 2013-09-27T21:32:11.473 に答える