AJAX Umgang 302-Umleitung

Ich habe eine Datenbank auf einem externen server, den ich versuche, die Abfrage. Um dies zu tun, werde ich auf meinem lokalen server (Tomcat) und das erstellen eines AJAX-calls (nur das XMLHttpRequest-Objekt - ich bin nicht mit jedem JavaScript-Bibliotheken), um die Seite mit einer Abfrage angehängt. Einfügen die genau die gleiche URL in Firefox bewirkt, dass es, um zu versuchen, um den download einer XML-Dokuments. Mein Ziel ist es, AJAX verwenden, um das XML-Dokument.

Das problem, das ich habe ist, dass wenn ich den Aufruf mit AJAX, Firebug zeigt, dass die Antwort zurückgegeben 302 "Moved Vorübergehend" mit einem roten X daneben. Der header für die Antwort hat ein Lage-parameter mit OAuth-Autorisierung, und wenn ich kopieren und fügen Sie den parameter " Ort " es bringt mich auf die richtige Seite (sagt mir der download des XML-Objekts).

EDIT: versuchte ich es mit jQuery $.get("URL", function(data){alert(data)}); und das gleiche passierte - keine Warnung, sondern eine rot-GET-Anfrage und 302 in Firebug.

Basierend auf diesen Informationen, ich denke, dass die Datenbank rufe ich zunächst versuchen, die Umleitung mich zu einigen OAuth Sache, was dann wieder einen autorisierten URL, mit der auf die Datenbank zugreifen. Dies ist, was ich verwenden sollte zum Aufruf der Datenbank, Holen Sie sich die XML-Objekts zurück, und dann mein eigenes Ding machen. AJAX scheint nicht in der Lage sein zu handhaben, umleiten und wird stattdessen Absturz.

Ich bin mir nicht sicher, das ist richtig, aber auch, weil ich versucht mit dem folgenden code:

  else if (xmlhttp.readyState == 4 && xmlhttp.status == 302){
  alert("Hello 302!");
}
else {
  document.getElementById("test").innerHTML = "On state: " + xmlhttp.readyState + "<br />HTTP Status: " + xmlhttp.status;
}

und es mir nicht eine Warnung, sondern zeigt, dass es auf Status 4 und status 0. Ich verstehe nicht, warum würde es wieder status 0. (Edit: Korrigiert die Tippfehler erwähnt in Antwort 1 und nichts verändert)

Also meine Fragen sind:

  • Was genau ist hier Los?
  • Was ist das 0-status, warum Firebug gibt mir ein X neben 302 in der Konsole, und warum nicht gibt es eine Umleitung?
  • Wie kann ich dieses Problem beheben?
  • Sobald ich es beheben, werde ich in der Lage sein zu greifen, die XML-Datei, oder gibt es etwas, was ich sonst noch tun müssen?

BEARBEITEN MIT UPDATE: Es ist eine cross-site-scripting-Problem. Ich ging auf den externen server und lief das exakt gleiche Skript und war in der Lage, abrufen und analysieren ein XML-Dokument mit dem Ergebnis der Abfrage. Die einzige Hürde ist, herauszufinden, wie man dies von einem externen server. Ich habe Zugriff auf die Konfiguration des externen Servers und untersuchen, wie Sie zu manipulieren, um zu erlauben, Zugriff über Datenbank-Abfragen von anderen Websites.

  • kannst du etwas code hier .... machen Sie auch eine Weiterleitung auf server-Seite ?
Schreibe einen Kommentar