Récupérer des informations d'un autre site en Javascript

Fermé
Anonyme209 Messages postés 681 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 - 28 avril 2015 à 15:59
Anonyme209 Messages postés 681 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 - 2 mai 2015 à 18:41
Bonjour,

Je souhaiterais récupérer une information sur un autre site en Javascript.
Par exemple, si l'autre site affiche "1", le premier site effectue une action, sinon il en effectue une autre etc.


J'ai essayé avec ce code et avec plusieurs autres trouvés sur Internet, mais aucun ne marche, il ne se passe rien:
			
function getXMLHttpRequest() {
	var xhr = null;
	
	if (window.XMLHttpRequest || window.ActiveXObject) {
		if (window.ActiveXObject) {
			try {
				xhr = new ActiveXObject("Msxml2.XMLHTTP");
			} catch(e) {
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			}
		} else {
			xhr = new XMLHttpRequest(); 
		}
	} else {
		return null;
	}
	
	return xhr;
}
var xhr = getXMLHttpRequest();
xhr.onreadystatechange = function() {
	if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) {
		if (xhr.responseText == "1"){
		alert("Le site affiche 1");
		}else{
		alert("Le site n'affiche pas 1");
		}
	}
};
var lien = "adressedelautresite";
xhr.open("POST", lien, true);
xhr.send(null);
A voir également:

1 réponse

jordane45 Messages postés 38467 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 19 avril 2025 4 741
28 avril 2015 à 16:13
Tu as essayé de faire un ALERT de la réponse pour voir ce qui était retourné ?

if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) {
        alert(xhr.responseText);

	if (xhr.responseText == "1"){
          alert("Le site affiche 1");
	}else{
          alert("Le site n'affiche pas 1");
	}
}


Par contre .. si le site en question n'est pas sur le même domaine.. il faut que regardes du côté de : xmlhttprequest-cross-domain
https://openclassrooms.com/fr/courses/245710-ajax-et-lechange-de-donnees-en-javascript/245581-lxmlhttprequest-cross-domain

1
Anonyme209 Messages postés 681 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 16
28 avril 2015 à 16:49
Je vais donc vous parler des deux techniques bien qu'elles ne soient pas encore vraiment utilisables, car seul IE8 gère XDomainRequest et... aucun autre navigateur ne gère la version 2 d'XMLHttpRequest.

En réalité c'est faux, Firefox 3 gère la version 2 d'XHR, mais seulement dans les extensions, et non dans les pages Web. Le problème (parce que c'est bien un bug) est corrigé dans la version 3.1 Beta 1 !

Extrait de la page https://openclassrooms.com/fr/courses/245710-ajax-et-lechange-de-donnees-en-javascript/245581-lxmlhttprequest-cross-domain
0
jordane45 Messages postés 38467 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 19 avril 2025 4 741
28 avril 2015 à 16:55
En même temps... pour faire de l'AJAX.. il est plus simple (je trouve) d'utiliser JQUERY.
et son paramètre : crossDomain
crossDomain (default: false for same-domain requests, true for cross-domain requests)

https://api.jquery.com/jQuery.ajax/
0
Anonyme209 Messages postés 681 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 16
30 avril 2015 à 19:26
Bonjour,

Je n'ai pas réussi à faire fonctionner le xmlhttprequest-cross-domain et je ne connais rien en JQUERY.
0
Anonyme209 Messages postés 681 Date d'inscription samedi 6 octobre 2012 Statut Membre Dernière intervention 22 décembre 2020 16
Modifié par Anonyme209 le 2/05/2015 à 18:41
Bonjour,

J'ai essayé d'apprendre à utiliser le cross domain, en vain, tout comme l'implémentation dynamique de balises <script>.
Je continue à faire des recherches mais si quelqu'un pouvait m'aider ça m'arrangerait.
0