F5 および Ctrl F5 の標準はありますか?
IE6 と Firefox 2.x で実験を行いました。 F5 Refresh は、If-Modified-Since
ヘッダーを含むサーバーへの HTTP リクエストをトリガーしますが、Ctrl F5 は存在しません。このようなタイトルになります。私の理解では、F5 はキャッシュされたコンテンツを可能な限り活用しようとするのに対し、Ctrl F5 はキャッシュされたコンテンツをすべて破棄し、すべてを取得することを目的としています。サーバーに再度コンテンツを送信します。
しかし今日、一部の最新ブラウザ (Chrome、IE8) ではこのように機能しなくなっていることに気付きました。 F5 と Ctrl F5 は両方とも If-Modified-Since
ヘッダーを送信します。
では、これはどのように機能するのでしょうか。また、(標準がない場合は) これらの更新機能の実装方法において、主要なブラウザはどのように異なるのでしょうか?
ブラウザによって異なりますが、同様に動作します。
F5 通常、ページは変更された場合にのみ更新されます。最新のブラウザは、
Cache-Control: max-age=0
を送信して、キャッシュされたリソースが新しいとみなされる最長時間を (リクエストの時間と比較して) 伝えます。CTRL-F5 は、キャッシュを無視して更新を強制するために使用されます。最新のブラウザは、
を送信します。Cache-Control: no-cache
およびPragma: No-cache
私の記憶が正しければ、Netscape は、CTRL -
リーリーF5
を押したときに Pragma: No-cache を追加することでキャッシュ制御サポートを追加した最初のブラウザでした。Chrome 6.0.472 に関する注意: 強制リロード (例: CTRL-F5) を実行すると、URL が内部では常に強制リロードとしてマークされています。アドレス バーに移動して Enter キーを押すと、フラグがクリアされます。
一般的に言えば:
F5 は、キャッシュからページを読み込む可能性があるため、コンテンツが変更されても同じページを提供することがあります。ただし、Ctrl F5 を使用すると、キャッシュが強制的に更新され、コンテンツが変更された場合に新しいコンテンツが取得されることが保証されます。