Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie kann ich mit jQuery erfolgreich domänenübergreifende AJAX-JSONP-Anfragen stellen?

Mary-Kate Olsen
Freigeben: 2024-11-19 05:28:02
Original
277 Leute haben es durchsucht

How Can I Successfully Make Cross-Domain AJAX JSONP Requests with jQuery?

Domainübergreifende AJAX-JSONP-Anfragen mit jQuery erstellen

Beim Versuch, JSON-Array-Daten mithilfe von jQuery-Ajax domänenübergreifend zu analysieren, ist es wichtig, Folgendes zu tun Beachten Sie, dass der Remote-Server, der die Daten hostet, die Methodeninjektion unterstützen muss, damit JSONP ordnungsgemäß funktioniert.

In Ihrem Code initiiert der folgende Block eine AJAX-Anfrage mit dataType: 'jsonp':

$.ajax({
    type: "GET",
    url: "http://10.211.2.219:8080/SampleWebService/sample.do",
    dataType: "jsonp",
    success: function (xml) {
        alert(xml.data[0].city);
        result = xml.code;
        document.myform.result1.value = result;
    },
});
Nach dem Login kopieren

Wenn jQuery diese Anfrage ausführt, hängt es ?callback={some_random_dynamically_generated_method} an die URL an. Diese Methode, die normalerweise an das Fensterobjekt angehängt ist, fungiert als Proxy und sieht in etwa so aus:

window.some_random_dynamically_generated_method = function(actualJsonpData) {
    // Calls the success callback
    successCallback(actualJsonData);
}
Nach dem Login kopieren

Während Ihr clientseitiger Code korrekt erscheint, ist es unbedingt erforderlich, Ihren serverseitigen Code zu ändern, um ihn zu umschließen JSON-Daten mit dem über die Abfragezeichenfolge übergebenen Funktionsnamen. Wenn die Anforderungs-URL beispielsweise „?callback=my_callback_method“ enthält, sollte der Server mit JSON-Daten antworten, die in der folgenden Struktur verpackt sind:

my_callback_method({your json serialized data});
Nach dem Login kopieren

Dadurch wird sichergestellt, dass die JSON-Daten erfolgreich analysiert und Ihrem Client zur Verfügung gestellt werden -Seitencode.

Das obige ist der detaillierte Inhalt vonWie kann ich mit jQuery erfolgreich domänenübergreifende AJAX-JSONP-Anfragen stellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage