ie9 - ¿Cómo evitar que una solicitud de jQuery Ajax se almacene en caché en Internet Explorer?
library jquery (5)
¿Cómo puedo evitar que una solicitud jQuery Ajax se almacene en caché en Internet Explorer?
Aquí hay una propuesta de respuesta:
http://www.greenvilleweb.us/how-to-web-design/problem-with-ie-9-caching-ajax-get-request/
La idea es agregar un parámetro a su consulta ajax que contenga, por ejemplo, la fecha actual y la hora, para que el navegador no pueda guardarlo en la memoria caché.
Eche un vistazo en el enlace, está bien explicado.
Esta es una publicación antigua, pero si IE te está dando problemas. Cambie sus solicitudes GET a POST e IE ya no las almacenará en caché.
Pasé demasiado tiempo resolviendo esto de la manera más difícil. Espero eso ayude.
Si configura parámetros únicos, entonces la caché no funciona, por ejemplo:
$.ajax({
url : "my_url",
data : {
''uniq_param'' : (new Date()).getTime(),
//other data
}});
Puede deshabilitar el almacenamiento en caché global utilizando $.ajaxSetup()
, por ejemplo:
$.ajaxSetup({ cache: false });
Esto agrega una marca de tiempo a la cadena de consulta al realizar la solicitud. Para desactivar la memoria caché para una llamada $.ajax()
, establezca la cache: false
en ella localmente, como esto:
$.ajax({
cache: false,
//other options...
});
Cache-Control: no-cache, no-store
Estos dos valores de encabezado pueden combinarse para obtener el efecto requerido tanto en IE como en Firefox