Actualizar web diseñada en flash

Soy pablo y mi pregunta es la siguiente, estoy trabajando en un sitio web diseñado en flash y tiene una página central que llama a otros swf que se cargan a la primera página a través de la opción loadmovie, en fin todo funciona bien pero cuando actualizo alguno de los swf externos estos no se ven actualizados en la página ya que los computadores guardan los archivos en la memoria cache, como refresco esto, hay un truco o algo así.

5 Respuestas

Respuesta
1
Existe un método que recién lo estoy implementando, pero todavía no lo pruebo en la Internet, espero que te sirva:
El método usado habitualmente, consiste en crear una variable aleatoria y añadirla al final de la URL, de forma que cada vez que hacemos una llamada, esta (aparentemente es nueva).
// -- crear una variable aleatoria
var nc = new Date().getTime();
// -- insertar la variable como argumento de parámetro y hacer llamada
this.loadMovie("archivo.extension?nc ="+nc );
----------------------------------------------------------
Otra opción:
loadMovie("archivo.extension?id="+random(1000));
Podemos agilizar esta operación con el uso de una función o un prototype:
// prototype loadWithNoCache
// descripción: carga archivos con formato SWF o JPG evitando la cache
// @param mi_file
MovieClip.prototype.loadWithNoCache = function(mi_file) {
var nc = new Date().getTime();
this.loadMovie(mi_file+"?param="+nc);
};
// ? uso
loadWithNoCache("miarchivo.extension");
----------------------------------------------------------
Evitar la cache al cargar la primera página
<param name="movie" value="mipelicula.swf?id="add random (1000)>
----------------------------------------------------------
Otras opciones:
Inserta el siguiente código HTML entre las etiquetas <HEAD></HEAD>
Opción 1
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
Opción 2
<META HTTP-EQUIV="Expires" CONTENT="Mon, 01 Dec 2000 00:00:00 GMT">
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
----------------------------------------------------------
Respuesta
1
Lo principal son los tags:
<META HTTP-EQUIV="Expires" CONTENT="Mon, 04 Dec 1999 21:29:02 GMT">
<HEAD>
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
</HEAD
Lo del aleatorio es para cuando haces el loadmovie por ejemplo:
si haces
loadMovie("prodmatrices.swf", 1);
Tienes que hacer:
loadMovie("prodmatrices.swf?ID=66676",1);
La idea consiste en que como el id cambia no se cachea, porque el parámetro url del load movie es siempre distinto, pero sigue siendo el mismo swf u otro actualizado.
El numero es solo ilustrativo, en realidad tienes que generarlo en flash, con action script.
PD: Esto solo funciona online, si lo pruebas en tu disco con la depuración de flash no va a funcionar, puede funcionar si ejecutas el swf directamente, pero es conveniente que lo pruebes online.
Fíjate esto:
http://www.webintenta.com/Evitar-el-cache-en-los-ficheros-swf.html
Respuesta
1
Supongo que estarás visualizando la página en Internet Explorer, si no es así corrígeme. Lo único que debes hacer es cada vez que modifiques las animaciones, ir a Herramientas>>Opciones de internet..>> Y en la pestaña "General", presionar el botón "Eliminar archivos", en el apartado de -Archivos temporales de internet-
Y acto seguido refrescar la página. Con esto te valdrá, si no te funciona me comentas.
Gracias, loco eso lo se pero no le voy a pedir a cada usuario que haga lo mismo, lo que busco es hacer lo mismo que tu dices pero automático (refresh)
Ah!, pensé que era a nivel de pruebas. Pues puedes hacerlo con una función de javascript como esta tipo: location. Reload, pero no estoy seguro que solo con recargar la página te sustituya el archivo swf guardado en cache..
Pruébalo y me comentas.
Ok me parece bien, ¿ahora específicamente donde tengo que poner esa función java en el flash o en el html que lo contiene?
Gracias
Podrías en el flash con un getURL("javascript:window.location.reload"), pero casi mejor ponla en el html ya que en cualquiera de los dos casos se ejecutara en el navegador.
Respuesta
1
Necesito saber si estas trabajando esto en un servidor local o en uno en internet ademas del sistema operativo en que estas montando el server
Respuesta
En la empresa donde trabajo me pidieron que hiciera lo mismo pero no lo he logrado todavía... tendríamos que intentar con algún experto que lo haya hecho.
Lamento no poder ayudarte

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas