IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[AJAX] XMLHttpRequest cross domain


Sujet :

JavaScript

  1. #21
    Membre confirmé Avatar de d-Rek
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2007
    Messages : 438
    Points : 455
    Points
    455
    Par défaut
    Donc je t'arrête. Tu es en état d'arrestation.

    Donc c'est bien JS (serveurA) ==> Méthode XmlHttpRequest==> proxy.php (serveurA) ==> serveur B
    avec Serveur A, un Apache et serveur B, on s'en fout.

    C'est tout à fait ce que je disais au post précédent

  2. #22
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut
    Citation Envoyé par d-Rek Voir le message
    Donc je t'arrête. Tu es en état d'arrestation.

    Donc c'est bien JS (serveurA) ==> Méthode XmlHttpRequest==> proxy.php (serveurA) ==> serveur B
    avec Serveur A, un Apache et serveur B, on s'en fout.

    C'est tout à fait ce que je disais au post précédent
    Ok donc moi aussi je t'arrête car j'ai dis aussi plus haut que je ne pouvais rien mettre de plus sur le serveur A

    Sinon en effet j'aurais utilisé la technique du proxy

    Donc là je ne vois plus beaucoup de solution
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

  3. #23
    Membre confirmé Avatar de d-Rek
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2007
    Messages : 438
    Points : 455
    Points
    455
    Par défaut
    Développer sans pouvoir créer de pages, ça devient compliquer.
    Bon courage.

  4. #24
    Expert éminent

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par sorry60 Voir le message
    Eh non justement, sur le serveurA, je n'ai que le JS, rien d'autre, sinon ça aurait été facile
    Si tu n'as que JS, ce n'est pas vraiment un serveur. Et toute ton histoire, ça tient beaucoup plus de la question un peu louche : Pourquoi vouloir à tout prix faire du cross-domain alors que tu n'as les droits nulle part

  5. #25
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut
    Citation Envoyé par denisC Voir le message
    Si tu n'as que JS, ce n'est pas vraiment un serveur. Et toute ton histoire, ça tient beaucoup plus de la question un peu louche : Pourquoi vouloir à tout prix faire du cross-domain alors que tu n'as les droits nulle part
    Si justement j'ai les droits sur le serveurB.
    Je dois envoyer une donnée du serveurA à B, en utilisant uniquement un .js

    Rien de louche

    Pour le moment, la meilleur technique c'est la popup, mais c'est pas tres pro
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

  6. #26
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Points : 1 419
    Points
    1 419
    Par défaut
    je te conseille d'aller voir JQuery et la technique JSONP
    ca devrait parfaitement coller avec ton besoin

  7. #27
    Membre averti
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Points : 374
    Points
    374
    Par défaut
    Citation Envoyé par d-Rek Voir le message
    Bon je te conseille de revoir les tuto sur l'ajax

    Code Javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function getXhr(){
    	var xhr = null;
    	if(window.XMLHttpRequest){ //Firefox et autres
    		xhr = new XMLHttpRequest();
    	}else if(window.ActiveXObject){ //Internet Explorer
    		try{xhr = new ActiveXObject("Msxml2.XMLHTTP");}
    		catch(e){xhr = new ActiveXObject("Microsoft.XMLHTTP");}
    	}else{
    		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
    		xhr = false;
    	}
    	return xhr;
    }
    Comme quoi les tutos c'est parfois sans intérêt...
    Ton alert "Votre navigateur ne supporte pas les objets XMLHTTPRequest...", c'est vraiment génial pour un utilisateur lambda

    De plus Ca ne sert à rien, puisque une fonction:void() renvoie par défaut la valeur undefined (qui est castée en false dans le cas d'un test booleen)

    Edit : J'avais pas vu qu'il y avait autant d'anneries dans ce truc

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    function getXhr(){
    	if(window.XMLHttpRequest){ //Firefox et autres
    		return new XMLHttpRequest();
    	} else if(window.ActiveXObject){ //Internet Explorer
    		try{
    			return new ActiveXObject("Msxml2.XMLHTTP");
    		}
    		catch(e){
    			return new ActiveXObject("Microsoft.XMLHTTP");
    		}
    	}else{
    		//Whatever stuff than throw a stupid message in the face of the user
    	}
    	return null;
    }
    J'ai mis un "return null", il est optionnel, mais permet d'être sur du comportement de la fonction

    Citation Envoyé par d-Rek Voir le message
    Donc je t'arrête. Tu es en état d'arrestation.

    Donc c'est bien JS (serveurA) ==> Méthode XmlHttpRequest==> proxy.php (serveurA) ==> serveur B
    avec Serveur A, un Apache et serveur B, on s'en fout.

    C'est tout à fait ce que je disais au post précédent
    Serveur A on s'en fout aussi, Serveur A doit savoir livrer du plain text, point.
    Ca peut être un lighty, un mongrel, etc... N'importe quoi qui exploite http, le proxy peut être fait avec n'importe quoi, tant qu'il est hebergé au même endroit

  8. #28
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut
    Citation Envoyé par epsilon68 Voir le message
    je te conseille d'aller voir JQuery et la technique JSONP
    ca devrait parfaitement coller avec ton besoin

    Ok merci pour la piste, je vais aller voir ça
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

  9. #29
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut
    Citation Envoyé par epsilon68 Voir le message
    je te conseille d'aller voir JQuery et la technique JSONP
    ca devrait parfaitement coller avec ton besoin
    En y reflechissant je ne pense pas que ça colle à mon besoin car JSONP permet de recuperer un flux JSON sur un autre serveur, pas un .php
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

  10. #30
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Points : 1 419
    Points
    1 419
    Par défaut
    il n'y a pas que JSONP avec JQuery.
    t'as été voir ? rien ne correspond a tes besoins ?

    si ton php c'est de l'html alors je ne pense pas que ce soit un probleme.
    (ne serait ce que par un coup d'iframe hack)

    a+

  11. #31
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut
    Citation Envoyé par epsilon68 Voir le message
    il n'y a pas que JSONP avec JQuery.
    t'as été voir ? rien ne correspond a tes besoins ?

    si ton php c'est de l'html alors je ne pense pas que ce soit un probleme.
    (ne serait ce que par un coup d'iframe hack)

    a+
    Oui j'ai essayé JQuery et ses fonctions $.post et $.get, mais elles sont refusées en cross-domain également
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

  12. #32
    Expert éminent

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par sorry60 Voir le message
    elles sont refusées en cross-domain également
    C'est le navigateur qui refuse les appels XHR cross-domain..... Un framezork par dessus le navigateur ne pourra pas y faire grand chose.

  13. #33
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut
    Citation Envoyé par denisC Voir le message
    C'est le navigateur qui refuse les appels XHR cross-domain.....
    Je sais.
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

  14. #34
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Points : 1 419
    Points
    1 419
    Par défaut
    le JSONP c'est du cross domain, et le navigateur ne dit rien ...
    il faut bien sur re-designer quelques pages pour que tout fonctionne bien

  15. #35
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut
    Citation Envoyé par epsilon68 Voir le message
    le JSONP c'est du cross domain, et le navigateur ne dit rien ...
    il faut bien sur re-designer quelques pages pour que tout fonctionne bien
    Oui mais le JSONP n'appelle que des javascript, pas un fichier php.
    Ou alors j'ai manqué un truc..
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

  16. #36
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Points : 1 419
    Points
    1 419
    Par défaut
    Comment il est ton fichier PHP ?
    il genere quoi ?
    au cas ou t'as moyen de le modifier ?

    un fichier PHP en soi ne veut rien dire, c'est ce qu'il renvoie qui a beaucoup d'importance

  17. #37
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut
    Citation Envoyé par epsilon68 Voir le message
    Comment il est ton fichier PHP ?
    il genere quoi ?
    au cas ou t'as moyen de le modifier ?

    un fichier PHP en soi ne veut rien dire, c'est ce qu'il renvoie qui a beaucoup d'importance
    Il ne fait que recuperer 2 valeurs de variables passées par la methode GET, les modifie, et les stocke dans un fichier.
    Donc le PHP est necessaire
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

  18. #38
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Points : 1 419
    Points
    1 419
    Par défaut
    dans ce cas je n'ai pas l'impression que ce soit insurmontable...
    pourquoi ne pas creer une iframe invisible avec l'url de ton php et tes eventuels parametres ?
    Je n'ai pas l'impression que tu attendes une reponse de ce server donc ... finalement ajax c'est pas trop le probleme.

  19. #39
    Membre actif Avatar de sorry60
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 802
    Points : 253
    Points
    253
    Par défaut
    Citation Envoyé par epsilon68 Voir le message
    dans ce cas je n'ai pas l'impression que ce soit insurmontable...
    pourquoi ne pas creer une iframe invisible avec l'url de ton php et tes eventuels parametres ?
    Je n'ai pas l'impression que tu attendes une reponse de ce server donc ... finalement ajax c'est pas trop le probleme.
    L'iframe est la 1ere solution à laquelle j'ai pensé. Mais cela ne convient pas, car le fichier php doit etre appellé au moment de la soumission d'un formulaire. Donc si l'iframe se charge à ce moment, la soumission echoue

    C'est pour cela que je me suis tourné vers ajax. Mais étant donné que le cross-domain est refusé, je pense que je vais devoir oublier AJAX
    Si je pleure encore qu'un jour tu me reviennes,
    C'est que sans toi je suis comme un Roi sans sa Reine.

Discussions similaires

  1. Réponses: 0
    Dernier message: 16/11/2016, 00h18
  2. Autoriser XMLHTTPRequest cross domain
    Par esperal dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 14/12/2015, 13h26
  3. [AJAX] ajax et cross domain scripting
    Par fabsys dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/03/2008, 22h32
  4. [AJAX] Ajax et https considéré comme cross-domain
    Par cassy dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 24/08/2007, 18h41
  5. [Ajax] Cross domain et access denied
    Par Dinaïz dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 22/03/2006, 22h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo