benutze jsonp, um xml cross domain zu erhalten

9

Ich versuche, XML in eine Webseite von einem anderen Server zu lesen, und ich nehme an, dass mein Problem die gleiche Ursprungsrichtlinie ist und daher ein domänenübergreifendes Problem.

Ich habe ein bisschen gegoogelt und es scheint, dass Jsonp der Weg nach vorne ist. Basierend auf einigen Beispielen, die ich hier auf stackoverflow und anderen Seiten gefunden habe, habe ich das, und es trifft den Server nicht mit der XML. Ich kann die XML in einem Browser anzeigen.

%Vor%

Irgendwelche Vorschläge? Bitte denken Sie daran, dass ich ein Neuling in Bezug auf JS / JQuery bin; o)

    
lmkk 18.06.2010, 09:21
quelle

2 Antworten

3

Wenn Sie keinen Zugriff auf den Server haben (z. B. wenn Sie eine API konsumieren), können Sie diese verwenden YQL , um Ihre XML in jsonp zu konvertieren und den Yahoo-Server über den Browser mit einer benutzerdefinierten YQL-URL abzufragen (in die eingebettet ist a SQL-ähnliche Anweisung). Hier ist ein Beispiel (für die Zillow API):

%Vor%     
Pierre 24.04.2012 19:39
quelle
1

Wenn Sie Zugriff auf Code haben, der die XML-Datei auf dem Remote-Server generiert, können Sie das Ganze in jsonp einbinden.

JSONP ist eine Möglichkeit, die Richtlinie für denselben Ursprung zu umgehen, indem Daten mithilfe von <script> -Tags abgerufen werden und nicht versucht wird, Informationen aus der Ferne zu extrahieren.

In Ihrem getconfiguation -Skript hätten Sie etwas wie

%Vor%

wobei der Rückruf durch den Remote-Aufruf festgelegt wird

Wenn dein Remote-Skript beispielsweise PHP ist, würdest du es so aussehen lassen:

%Vor%

Dann führe AJAX aus, die du in deiner Frage angegeben hast. Was dies tatsächlich tut, ist das dynamische Einfügen eines Skript-Tags in Ihre Seite wie folgt:

%Vor%

jquery füllt das ??? für Sie mit einem einzigartigen Wrapper generiert es für Ihren Erfolg Rückruf

    
Jamie Wong 18.06.2010 09:31
quelle

Tags und Links