2012-04-05 11 views
0

Jqueryのgetによって作成されたAjaxリクエストのキャッシュがランダムに発生しています。Jquery Get中にキャッシングを避ける有効な方法Get(AJAX)

jqueryのは、私はすでに

$.ajaxSetup({cache:false}); 

を使用しています最も単純従来の方法(ルート+のparams +コールバック)

に行われています。しかし、常に動作するようには思えません。私はどのようにajaxSetupキャッシュが動作し、追加されたランダムなパラメータが私のリクエストURLに追加されているのを見る。

私の現在のブラウザはIE 8.0

誰もがajaxSetupの方法以外にも、別の解決策を知っていますですが追加したとして...

+1

キャッシングがどのように分かっていますか? – Greg

+1

ブラウザは異なるURLのリクエストをキャッシュしません(これはrandomパラメータの目的です)。 –

+0

コントローラにヒットしていないブレークポイントがあるので、私は知っています。リクエストはあまりにも早く戻ってくる:-) – TGH

答えて

0

私は、Ajaxリクエストのキャッシュに関する私の仮定について間違っていました。 実際の問題は、(元のajax呼び出しに応答して)サーバー上で行われたアクション要求へのリダイレクトのキャッシュでした。 解決策は次の属性になりました。

[OutputCache(Location = OutputCacheLocation.None)] 

コントローラレベルまたはアクションレベルで適用できます。

2

ブラウザ自体は単純、明確なパラメータを使用して要求をキャッシュ/はでき許可されていません{cache:false}

あなたのチェーンのどこか他の場所でキャッシングが起こっているようですが、おそらくウェブサーバー/アプリにあります。 Firebugのネットタブを使用して、ブラウザから何が要求されているのか、URLが正確であることを正確に確認し、そこから取得します。

+0

これは違いがある場合はAsp.Net MVC 3を使用しています – TGH

+0

私の解決策を追加しました – TGH

関連する問題