Evitar el almacenamiento en caché del navegador del resultado de la llamada AJAX

Resuelto Salamander2007 asked hace 15 años • 22 respuestas

Parece que si cargo contenido dinámico usando $.get(), el resultado se almacena en caché en el navegador.

Agregar una cadena aleatoria en QueryString parece resolver este problema (yo uso new Date().toString()), pero parece un truco.

¿Hay alguna otra manera de lograr esto? O, si una cadena única es la única forma de lograr esto, ¿alguna sugerencia además de new Date()?

Salamander2007 avatar Dec 15 '08 15:12 Salamander2007
Aceptado

Lo siguiente evitará que todas las solicitudes AJAX futuras se almacenen en caché, independientemente del método jQuery que utilice ($.get, $.ajax, etc.)

$.ajaxSetup({ cache: false });
Peter J avatar Apr 09 '2009 17:04 Peter J

$.get() de JQuery almacenará en caché los resultados. En lugar de

$.get("myurl", myCallback)

deberías usar $.ajax, que te permitirá desactivar el almacenamiento en caché:

$.ajax({url: "myurl", success: myCallback, cache: false});
Jonathan Moffatt avatar Apr 09 '2009 17:04 Jonathan Moffatt