AJAX beklenmedik Önbellekleme IE8 sonuçları
JQuery Ajax isteği, Internet Explorer önbelleği sonuçları ile ciddi bir sorun yaşıyorum.
Bir kullanıcı yeni bir sayfaya gider her zaman güncellenir web sayfamda başlık var. Sayfa yüklendikten sonra bu yaptığım
$.get("/game/getpuzzleinfo", null, function(data, status) {
var content = "<h1>Wikipedia Maze</h1>";
content = "<p class='endtopic'>Looking for <span><a title='Opens the topic you are looking for in a separate tab or window' href='" data.EndTopicUrl "' target='_blank'>" data.EndTopic "<a/></span></p>";
content = "<p class='step'>Step <span>" data.StepCount "</span></p>";
content = "<p class='level'>Level <span>" data.PuzzleLevel.toString() "</span></p>";
content = "<p class='startover'><a href='/game/start/" data.PuzzleId.toString() "'>Start Over</a></p>";
$("#wikiheader").append(content);
}, "json");
Sadece sayfa Başlığı içine bilgi enjekte ediyor. 9 ** ve sonra oturum ve yeni bir bulmaca başlatarak kontrol edebilirsiniz.
Test ettim her tarayıcı (Google Chrome, Firefox, Safari, Internet Explorer) harika çalışıyorhariçIE. YANİ her şeyi çok iyi enjekte alırilk kezama hiç bir zaman /game/getpuzzleinfo
çağrı yapar sonra. Sonuçları falan önbelleğe var gibi.
Eğer değiştirirsem $.post("/game/getpuzzleinfo", ...
IE sesi gayet iyi alıyor. Ama sonra Firefox çalışmayı bırakıyor.
Biri IE $.get
ajax telefonlarıma önbellekleme niçin bu biraz aydınlatabilir misiniz?
GÜNCELLEME
Öneri aşağıda başına, benim sorunum sabit olan bu, ajax isteğimi değiştirdim:
$.ajax({
type: "GET",
url: "/game/getpuzzleinfo",
dataType: "json",
cache: false,
success: function(data) { ... }
});
CEVAP
IE Ajax yanıtları onun agresif önbellekleme tanınıyor. JQuery kullanıyorsanız, küresel bir seçeneği ayarlayabilirsiniz:
$.ajaxSetup({
cache: false
});
string sorgu istemek için rastgele bir değer katmak için DV böylece yanıt önbelleğe alınan IE engelleyen neden olacak.
Eğer diğer Ajax aramaları önbelleğe istediğiniz yerdeki varsa, o da devre dışı bırakır unutmayın. Bu durumda, kullanarak geçiş $.() ajax yöntemi ve bu seçeneği açıkça gerekli istekleri için etkinleştirin.
Daha fazla bilgi için http://docs.jquery.com/Ajax/jQuery.ajaxSetup bkz.
Olduğu Safari iOS 6 önbellekleme $.aja...
AJAX çağrısı önlemek önbellekleme...
&Quot nedir;uyumsuz: yanlış" jQue...
Oturum açma/oturum çerezlerini, Ajax v...
Nasıl Basic Auth ve Jquery ve Ajax kul...