Envoyé par : Raphael
Date : 29/04/2007 10:02
Bonjour, pour checker mes MAJ, je me sers de Xmlhttprequest pour me connecter à un fichier .xml sur mon serveur, de cette manière :
// On regarde si une M.A.J. YCD est disponible dans le dépôt var req = new XMLHttpRequest(); req.open('GET', window.opener.UserPrefs['Ycd_Repository'], false); req.send(null); if(req.status == 200) dump(req.responseText); var data = req.responseText; data = data.replace(/\<\?xml version="1.0" encoding="UTF-8"\?\>/,""); var xml_data = new XML(data); var Ycd_Update = xml_data.update[0].@id;
Et bien quand j'uploade un nouveau fichier de MAJ via FTP, mon logiciel XUL ne voit pas forcément les changements. Et j'ai remarqué sous Ubuntu que si je supprimais le contenu du répertoire ./mylogin/myapp/Cache/ et que je relançais mon application, là... il voit les MAJ !
J'en conclue donc que malgré mon appel XMLHttpRequest(), Xulrunner ne se donne pas la peine de se connecter à mon fichier .xml sur mon serveur mais se sert de celui qu'il a en cache.
Quelqu'un a-t-il une idée simple pour forcer cette connexion au serveur et empêcher de regarder dans le cache ?
Y aurait bien la solution que je supprime tout ce qui se trouve dans le cache de manière manuelle par une petite fonction que je pourrais faire, mais c'est pas très propre non ?
Merci.
Envoyé par : chBok
Date : 29/04/2007 10:29
Tu peux aussi ajouter une "variable" fictive à la fin de la requête Web, genre url+"&rnd="+Math.random(). L'url étant différente, Firefox sera obligé de recharger les données depuis le serveur.
Envoyé par : Raphael
Date : 29/04/2007 11:17
Ok... donc si j'ai bien compris :
req.open('GET', window.opener.UserPrefs['Ycd_Repository']+"&rnd="+Math.random(), false);
Malheureusement ça ne mache pas car mon adresse n'est pas de la forme adresse.../index.php?act=1&rnd=789745 mais adresse.../fichierxml.xml&rnd=789745 du coup car mon fichier xml est statique et non dynamiquement généré...
Et forcément, ça marche pas... il trouve pas le fichier. Y a un moyen de contourner le problème ?
Envoyé par : chris
Date : 29/04/2007 15:20
Euh... remplace le &
par un ?
si tu n'as qu'un paramètre.
<edit>En fait, j'aurais du préciser pour être exact non pas "si tu n'as qu'un paramètre" mais plutôt "si c'est le premier paramètre". On sépare ensuite les paramètres entre-eux par &
</edit>
Envoyé par : Raphael
Date : 29/04/2007 16:48
Impeccable ça a l'air de marcher, merci beaucoup.
Envoyé par : chBok
Date : 29/04/2007 21:44
Merci chris d'avoir apporter cette précision
Envoyé par : chris
Date : 30/04/2007 00:10
Ben, c'est la moindre des choses voyons, pour une fois que je peux répondre
Il n'est plus possible de poster des messages dans ce forum.
Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.
Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™
sont des marques de la fondation Mozilla.