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

Anonyme209 Messages postés 681 Date d'inscription   Statut Membre Dernière intervention   -  
Anonyme209 Messages postés 681 Date d'inscription   Statut Membre Dernière intervention   -
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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   Statut Membre Dernière intervention   16
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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   Statut Membre Dernière intervention   16
 
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   Statut Membre Dernière intervention   16
 
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