AJAX 呼び出し結果のブラウザー キャッシュを防ぐにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-19 16:50:03
オリジナル
348 人が閲覧しました

How to Prevent Browser Caching of AJAX Call Results?

AJAX 呼び出し結果のブラウザー キャッシュの防止

AJAX 呼び出し結果のキャッシュは、動的コンテンツを操作するときに問題を引き起こす可能性があります。これを克服するために、ブラウザのキャッシュを防ぐ別の方法を検討します。

jQuery のキャッシュ オプションの利用

jQuery は、今後のすべての AJAX リクエストのキャッシュを無効にする簡単なソリューションを提供します。 。 $.ajaxSetup 関数を使用すると、キャッシュ オプションを false に指定して、後続の AJAX 呼び出しがキャッシュされないようにすることができます:

$.ajaxSetup({ cache: false });
ログイン後にコピー

ランダム QueryString Strings の代替

一意の文字列を QueryString に追加するとキャッシュを防ぐことができますが、これは最も望ましいアプローチではない可能性があります。代わりに、jQuery のタイムスタンプ メソッドは、リクエスト URL に追加する一意のタイムスタンプを生成し、結果がキャッシュされないようにできます。

$.ajax({
    url: 'some.php',
    method: 'GET',
    data: { timestamp: $.now() }
});
ログイン後にコピー

カスタム ヘッダーの作成

別オプションは、リクエストにカスタム ヘッダーを設定してキャッシュを防止することです。たとえば、次のヘッダーを使用すると、ブラウザーに応答をキャッシュしないよう指示します。

cache-control: no-cache, no-store
pragma: no-cache
ログイン後にコピー

HTTP ステータス コード

特定の HTTP ステータス コードを使用して、リソースをキャッシュすべきではないことを示します。 Cache-Control ヘッダーを max-age=0 または no-store に設定すると、キャッシュが防止されます。

Cross-Origin Resource Sharing (CORS)

AJAX リクエストがCORS がドメイン間で行われると、キャッシュ動作に干渉する可能性があります。クロスオリジンリクエストでキャッシュの問題が発生している場合は、上記の Cache-Control ヘッダーを使用するか、サーバーの CORS 関連の設定を検討することを検討してください。

以上がAJAX 呼び出し結果のブラウザー キャッシュを防ぐにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート