2010-09-28 5 views
0

J'ai une application X qui utilise une autre application Y dans certains cas.

X sur un serveur Apache, Y est sur un serveur Tomcat.

J'ai un bouton dans le fichier html dans Y qui appelle une fonction JavaScript StopApp(). Cette fonction StopApp() appelle le script "StopApp.php" qui se trouve sur X.

Alors ce que je faisais à l'intérieur StopApp() est quelque chose comme

function StopApp() 
{ 
//USING JQUERY $.ajax 
    $.ajax({ 
    type: "GET", 
     url: pathofX + "StopApp.php", 
     cache: false, 
     data:"blablabla", 
     dataType: "xml", 

     success: function(xml) 
    { 

    } 
    }); 
} 

OK si la chose est « StopApp.php "retourne un document XML, et je voudrais obtenir les valeurs de la balise XML dans le domaine de la réussite, mais je ne suis pas en mesure de le faire. Je sais que ça a à voir avec le cross-domain car c'est 2 serveurs différents, mais je ne sais pas comment le résoudre.

Répondre

0

Si vous êtes autorisé à modifier StopApp.php (vous pouvez également créer un wrapper qui appelle des fonctions depuis StopApp.php) et mettre toute la logique dans ce fichier (je veux dire toutes les actions que la fonction success doit faire) , vous pouvez utiliser la technique de l'article Ajax & PHP without using the XmlHttpRequest Object. En bref, vous devez créer un élément SCRIPT avec la source http:://Y/StopApp.php et l'ajouter au corps du document. C'est une solution JS pure, mais peut-être que vous trouverez le plugin jquery qui peut faire la même chose.

0

Les appels interdomaines sont interdits, vous ne pouvez pas contourner cette manière portable.

Btw, acceptez certaines de vos anciennes questions.

Questions connexes