Vediamo come agire sulla cache di jQuery ajax in modo tale da prevenire il caching della richiesta asincrona.
Di recente in un grosso progetto facente uso di Varnish Cache sul server mi è capitato che con alcuni browser come Firefox o Safari la richiesta asincrona fatta con jQuery ajax di fatto non funzionasse (anche se il pattern dell’url fosse filtrato lato server da varnish). Su Chrome e Opera nessun problema. Pertanto ho iniziato ad approfondire la funzionalità “cache” di jQuery Ajax.
Questo parametro, da passare nel codice della chiamata, disabilita il caching di ajax. Ecco come implementarlo:
$.ajax({
type: “GET”,
cache: false, // disabilita caching ajax
url: “url-to-ajax-call”,
data: “ajax=” + ajax + “×tamp=” + new Date().getTime(), // il timestamp dinamico a ogni call assicura la disabilitazione della cache
dataType: “html”,
success: function(msg)
{
//successo
},
error: function()
{
//errori
}
});//ajax
Per essere[…]
Powered by WPeMatico