Empécher le cache d'un swf.

Fermé
vincentkorg Messages postés 2 Date d'inscription mardi 19 janvier 2010 Statut Membre Dernière intervention 20 janvier 2010 - 19 janv. 2010 à 11:44
Irresistibledemon Messages postés 97 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 3 décembre 2011 - 3 oct. 2010 à 10:45
Bonjour,

Après plusieurs heures de recherches je décide de poster ici. J'ai en ma possession une animation swf qui a été compilée par qqu et dont je n'ai pas accès aux sources.
Cette animation lie un fichier xml pour charger des images. Ce fichier est mis à jour très souvent et comme le navigateur garde en cache le swf avec une ancienne config les images ne s'affichent pas correctement.

J'ai tout essayé ce que j'ai pu trouver sur internet mais en vain.

J'utilise un fichier php avec un code du genre:

$filename = "anim.swf?".rand();
header('Content-type: application/x-shockwave-flash');
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") ." GMT");
header("Cache-Control: no-store, no-cache,must-revalidate");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Pragma: no-cache");
$content = file_get_contents($filename);
echo $content;


J'ai essayé de passer un argument random dans la variable du path du fichier xml pour qu'il le considère comme diffèrent à chaque fois mais ça ne marche pas.

La dernière solution que je vois est de passer l'argument directement dans le swf. Mais je n'ai pas accès aux sources et ne veux pas passer par une décompilation.

En espérant que qqu pourra m'aider.

Saluations et merci
A voir également:

3 réponses

Utilisateur anonyme
19 janv. 2010 à 15:08
raffraichis ton cache
les utilisateurs de ton swf auront la derniere version du xml
0
vincentkorg Messages postés 2 Date d'inscription mardi 19 janvier 2010 Statut Membre Dernière intervention 20 janvier 2010
20 janv. 2010 à 16:49
?
Je me suis peut être mal exprimé. Il s'agit du cache côté navigateur client qui conserve le swf. La première fois que l'utilisateur affiche l'anime ça fonctionne. Si entre temps l'utilisateur vide son cache cela fonctionne également.

Comme le swf affiche a chaque fois des valeures random récupérée dans un fichier xml, le cache du client me pose un sérieux problème.

J'ai dit j'ai tout essayé. A pars ceci: http://forums.mediabox.fr/wiki/tutoriaux/flashplatform/programmation/faq/eviter_cache

qui est censé fonctionné, mais ne pouvant pas modifier le code de l'anime flash.

Qu'elle misère pour rien... Flassshh!!! mm
0
Irresistibledemon Messages postés 97 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 3 décembre 2011 9
3 oct. 2010 à 10:45
Pour ma part, lorsque j'appelle mes swf depuis le code AS alors j'utilise une variable aléatoire que je place derrière le nom du swf.
Comme ça le navigateur du client croit que c'est un autre SWF à chaque fois.
Il n'y a donc plus de problème de cache.

Utilisation de :
http://monsite.com/monSwf.swf?var=35652665656565
Plutot que :
http://monsite.com/monSwf.swf

Il est évident que le contenu de la "var" doit changer à chaque fois.
0