Ajax et la (non) mise en cache du fichier xml

Fermé
marsup - 11 avril 2008 à 15:01
youssefb Messages postés 16 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 20 juin 2008 - 14 mai 2008 à 22:46
Bonjour,

Je débute sur la programmation javascript, et ça fait 2 jours que je commence à utiliser Ajax.
En contrainte, ça doit tourner sur IE6. et je code en perl CGI.

Pour l'instant, mon script fonctionne correctement, j'arrive à récupérer mon fichier xml, je le parse, j'en fait ce que je veux, pas de souci.

Par contre, j'ai un souci de mise en cache du fichier xml. Je m'explique.
Les utilisateurs vont ouvrir la page et la laisseront ouverte (à titre indicatif, comme le Gmail, le webmail de Google). Cette page devra ensuite mettre à jour certains bouts de ma page.

Sur le serveur, un ou des scripts tourneront régulièrement et mettront à jour le fichier xml. Que je souhaite donc recharger via Ajax.

Pour l'instant, j'en suis juste à lancer la commande ajax quand je clique sur une image, et je modifie mon fichier xml à la main.

Et là, je me suis trouvé confrontée à un malheureux problème. Ce *$%@# de browser, puisqu'il a déjà chargé le fichier xml, il ne va pas se casser la tête à la recharger.

j'ai essayé de mettre en paramètre le temps unix.
si je le mets dans la partie [xhr.send(time);] , ça ne change rien,
si je le mets dans la partie open
[ var nom_file = '"/rep/truc.xml?'+time+'"';
xhr.open("GET",nom_file, true);
], ça ne se connecte plus.

j'ai aussi vu comme solution de rajouter dans l'en-tête:
[ContentType = "text/xml"
Cache-Control = "no-cache"].. mais je le mets où?


d'autant plus que si je dois modifier l'en-tête de mon fichier html qui s'affiche (qui contient mon code javascript) , il faudra que je ruse par rapport à mon framework perl. Mais si il faut, il faut.

voilà. si quelqu'un a une idée..
ou au moins un moyen de m'éclaircir.

Merci d'avance
A voir également:

1 réponse

youssefb Messages postés 16 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 20 juin 2008
14 mai 2008 à 22:46
Je ne comprend pas bien ton environnement de travail.

File nous ton js, commente le pour qu'on comprenne ce que tu veux faire; la on pourra mieux t'aider.
0