XMLHttpRequest qui marche en local, mais pas en ligne...

XMLHttpRequest qui marche en local, mais pas en ligne... - HTML/CSS - Programmation

Marsh Posté le 27-12-2007 à 19:01:07    

Bonjour,
 
Je cherche à récupérer des données générées par le site de la fédération francaise de hockey, pour les organiser autrement etc etc...
Mon problème vient de "la récupération" proprement dite.
 
J'utilise XMLHttpRequest pour cela, dans un script générique pompé je ne sais plus trop où, et adapté a mes besoins. Tout marche bien en local, mais une fois mis en ligne c'est la cata, la cata, la catastrophe. Ca ne marche plus biensur.
Est que j'ai loupé quelque chose ?
Je vous colle le code pour la récup'
 

Code :
  1. var xhr_object = null;
  2. if(window.XMLHttpRequest) // Firefox
  3.    xhr_object = new XMLHttpRequest();
  4. else if(window.ActiveXObject) // Internet Explorer
  5.    xhr_object = new ActiveXObject("Microsoft.XMLHTTP" );
  6. else { // XMLHttpRequest non supporté par le navigateur
  7.    alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..." );
  8.    return;
  9. }
  10. xhr_object.open("GET", "http://www.hockeyfrance.com/page.php?id_rubrique=136&file=overview&CompID=249", false);
  11. xhr_object.send(null);
  12. if(xhr_object.readyState == 4) var detection=xhr_object.responseText.substring(xhr_object.responseText.lastIndexOf("<tr class='Odd'>    <td class='num'>1</td>" ));


 
 
Je remercie par avance les personnes qui voudront bien donner un peu de leur temps.

Reply

Marsh Posté le 27-12-2007 à 19:01:07   

Reply

Marsh Posté le 27-12-2007 à 19:17:27    

http://developer.mozilla.org/fr/docs/AJAX:Premiers_pas

Citation :


Le second paramètre est l'URL de la page que vous demandez. Pour des raisons de sécurité, il n'est pas possible d'appeler des pages se situant sur un autre domaine. Veillez à utiliser le nom de domaine exact sur toutes vos pages ou vous obtiendrez une erreur « permission refusée » à l'appel d'open(). Une erreur courante est de charger le site via domaine.tld, mais d'essayer d'appeler des pages avec www.domain.tld.


C'est pi être ça le problème ?


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 27-12-2007 à 19:35:16    

Arf, je peux rien faire alors, Sachant que je vais chercher la page sur un autre site ?
 
Je voulais juste récupérer le contenu de cette page.

Reply

Marsh Posté le 27-12-2007 à 20:44:34    

exact zapan666 c'est bien le problème !
 
pour contourner le problème oZen tu peux faire une copie en local de page html que tu veux et l'ouvrir sur ton propre domaine grace à xmlhttprequest

Reply

Marsh Posté le 27-12-2007 à 21:04:51    

C'est une page qui est sujette a changement. Je ne peux donc pas la récupérer manuellement.
On parle d'un mini proxy php pour rapatrier la page en local ici: http://www.webrankinfo.com/forums/viewtopic_56054.htm
 
Bon, malheureusement moi le php, ben je connais pas. Il va donc falloir que je m'y colle.
 
En attendant si vous avez des conseils a me donner concernant un "proxy" en php ou autre d'ailleurs, qui me permettrait de récupérer cette page en local, n'hésitez pas ;)

Reply

Marsh Posté le 27-12-2007 à 21:09:42    

Je lit aussi que je pourrais mettre en place un Security Manager, une histoire de certificat, mais qui ne marche qu'avec Netscape/mozilla et pas avec IE. Bon moi je m'en fout un peu c'est surtout avec Safari que je veux que ca marche. Alors est ce compatible avec Safari ce certificat ?

Reply

Marsh Posté le 27-12-2007 à 21:26:21    

quand je dis copie c'est faire une copie de ta page à chaque fois que tu en as besoin, l'exploité avec xmlhttprequest, puis la supprimer
 
sinon sur ton lien, le dernier post, revient à ce que je dis on créé une copie local

Reply

Marsh Posté le 27-12-2007 à 21:28:09    

Oui, je pensais que tu voulais que je copie la page a la main, et pas qu'un script le face dynamiquement.
Sinon la solution d'un script php te parait viable ? Pas trop lent ?

Reply

Marsh Posté le 24-01-2008 à 20:41:52    

Bonjour plutot que recréer un sujet je vais mettre ma question ici.  
 
J'ai récupéré un projet de la fac à continuer de développer en html php javascript.  
 
Je connais rien à javascript et encore moins les xmlhttprequest meme si je me suis pas mal documenté maintenant j'ai encore une ptite question.
 
Déjà tout le monde dit que c est utilisable que si le javascript et la page appellé dans le  xmlhttprequest se trouve sur la même arborescence.  
 
Je dis ça à mon prof et il me dit que c'est faux et que tout le monde l'utilise. Moi j'ai lu que ça serait implémenté dans le prochain moteur gecko mais que ça l'était pas encore même si il existait des feintes qui permmetait de faire une requete sur un site distant. Alors qu'en est-il vraiment ?  
 
Ensuite seconde question j'ai réussi à faire la requete sur un site distant en mettant mon code dans le chrome de mozilla (via un paquet xpi pr l'addon je vous passe les détails)... Donc pour information qu'est ce qui fait qu'il n'y a pas d'alerte sécurité quand la page est dans le chrome de mozilla mais qu'il y en a autrement ?  
 
Merci ;)


---------------
http://plainedemazerolles.free.fr
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed