2010-12-08 9 views
1

次のようにajax呼び出しを設定しています。cache:true。しかしそれでも、それはキャッシュにajax呼び出し結果を格納せず、毎回同じことをajax呼び出しにします。Jquery ajax呼び出し結果キャッシュの問題

$.ajax(
          { 
           url: 'abc.aspx/getInfo', 
           cache: true, 
           type: 'POST', 
           data: '{userID: "' + id+ '"}', // id is a variabe 
           contentType: 'application/json; charset=utf-8', 
           dataType: 'json', 
           beforeSend: function() { 
            // somthing... 
           }, 
           success: function(response, textStatus) { 
           // something.... 
           } 
          } 

なぜそれが起こっているのかを教えてください。これを解決するには?

答えて

0

IIRCキャッシュはGET要求で動作します。 POSTリクエストの場合は、サーバサイドスクリプトに適切なHTTP cache headersを送信する必要があります。

+0

私はタイプ: 'POST'を使用しようとしていました。しかし、それは何らかの誤りを示していました。それで、 'POST'を 'GET'に置き換えることができます – ANP

+0

POSTをGETに置き換えると、キャッシュが機能するはずです。 –

+0

POSTをGETに置き換えたとき、データベースからデータをフェッチするために使用されるcodebehidの関数は実行されず、ファイアウォールでは403 Forbiddenエラーが表示されました。 – ANP

関連する問題