1. ホーム
  2. ジャバスクリプト

[解決済み】AJAX呼び出し結果のブラウザキャッシュを防止する

2022-03-31 06:33:32

質問

を使用して動的なコンテンツを読み込むと、そのように見えます。 $.get() の場合、結果はブラウザにキャッシュされます。

QueryStringにランダムな文字列を追加すると、この問題は解決するようです(私は new Date().toString() ) が、これではハックされたような気がします。

他に実現する方法はないのでしょうか? あるいは、一意な文字列が唯一の方法である場合、以下の方法以外に何か提案はありますか? new Date() ?

解決方法は?

私は new Date().getTime() これは、同じミリ秒の間に複数のリクエストが発生しない限り、衝突を回避することができます。

$.get('/getdata?_=' + new Date().getTime(), function(data) {
    console.log(data); 
});

編集する この回答は数年前のものです。まだ使えますが(だから削除していません)。 現在では、より良い、よりクリーンな方法があります。 . 私の好みは これ メソッドがありますが これ のキャッシュを無効にしたい場合にも有効です。 あらゆる リクエストに対応します。