Foros del Web » Programando para Internet » ASP Clásico »

Problemas con cache de funciones javascript

Estas en el tema de Problemas con cache de funciones javascript en el foro de ASP Clásico en Foros del Web. Buenas tardes: En verdad no se si esta consulta va en este foro o en el de JavaScript. Espero no causar problemas por esto. Tengo ...
  #1 (permalink)  
Antiguo 25/05/2011, 17:43
Avatar de freesoftwarrior  
Fecha de Ingreso: marzo-2006
Mensajes: 362
Antigüedad: 18 años, 1 mes
Puntos: 10
Problemas con cache de funciones javascript

Buenas tardes:
En verdad no se si esta consulta va en este foro o en el de JavaScript. Espero no causar problemas por esto.

Tengo una aplicación que estoy desarrollando en full ASP clásico y javascript. Hoy he notado que cuando abro con javascript una ventana adicional y cargo ahí una página asp que a su vez llama y/o ejecuta funciones en javascript, si modifico estas funciones y recargo la página principal, al momento de volver a abrir la ventana adicional TENGO que "actualizarla" para que se "activen" las modificaciones de las funciones javascript que he realizado.

Digamos esto:

Página principal -> página consulta

Si cambio el código de las funciones en javascript que se ejecutan en "página principal", al momento de volver a cargarla todo va ok, es decir, los cambios funcionan. Pero si haciendo uso de una simple función de ventana adicional, cargo "página consulta", no me va a mostrar las modificaciones de las funciones en javascript si es que no actualizo antes la página que carga.

Es como si hubiera una diferencia entre cargar una página y cargar una en una ventana adicional.

Tengo este código de cabecera en ASP que va en TODAS las páginas ASP que muestran algo:

Cita:
Response.Expires=0
Response.ExpiresAbsolute = Now() - 1
Response.addHeader "pragma", "no-cache"
Response.addHeader "cache-control","private"
Response.CacheControl = "no-cache"
Response.CacheControl = "Private"
Response.Buffer=True
'***** esta función sirve para convertir en español el formato de fecha en un servidor en inglés
Session.lcid=7178
y hace poco incluí este código HTML en la página asp que se carga en la ventana adicional

Cita:
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="Cache-Control" content="no-cache, must-revalidate">
Y sin embargo sigue igual, si no hago una actualización manual, no se muestran los cambios en las funciones javascript que se ejecutan en la página que se carga en la ventana adicional.

Tengo la impresión que tiene que ver algo con el caché o el historial, pero me parece que ya he cubierto ese aspecto con el código ASP y HTML que muestro.

Espero haberme explicado bien.
¿Alguna sugerencia?

Muchísimas gracias por su tiempo y apoyo. Un saludo desde Lima, Perú
  #2 (permalink)  
Antiguo 25/05/2011, 19:23
Avatar de freesoftwarrior  
Fecha de Ingreso: marzo-2006
Mensajes: 362
Antigüedad: 18 años, 1 mes
Puntos: 10
Respuesta: Problemas con cache de funciones javascript

Encontré la solución al problema. Me acordé de un pequeño tip que uso para código Ajax.

Cree una rutina simple con Rnd para obtener, en conjunción con la función Time, Minute, Hour y Second, un número aleatorio. Luego simplemente lo agrego como una variable en la URL tanto de los archivos JS como CSS de esta forma:

Cita:
<script language="JavaScript" src="../setup/funciones.js?<%= varControl %>" type=text/javascript></script>
donde varControl es la variable que contiene el número aleatorio generado previamente. De esa forma no tengo que recargar la página ni actualizar nada pues cada llamada será siempre una llamada nueva para el browser.

Etiquetas: cache, funciones, javascript
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:41.