Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie kann ich AJAX verwenden, um Daten von externen Domänen abzurufen?

Barbara Streisand
Freigeben: 2024-11-28 05:10:11
Original
754 Leute haben es durchsucht

How Can I Use AJAX to Retrieve Data from External Domains?

Domänenübergreifende AJAX-Anfragen: Problemumgehungen erkunden

AJAX hat die Webentwicklung revolutioniert und dynamische und interaktive Anwendungen ermöglicht. Beim Versuch, domänenübergreifende HTTP-Anfragen zu stellen, tritt jedoch aufgrund von Browser-Sicherheitsmaßnahmen ein häufiges Hindernis auf. In diesem Artikel werden alternative Lösungen untersucht, um diese Einschränkung zu überwinden und Daten von externen Domänen abzurufen.

Problemstellung

Die Frage unterstreicht die Unfähigkeit, AJAX-Aufrufe direkt an externe Domänen wie auszuführen „http://www.google.com“ aufrufen und die Ergebnisse auf der eigenen Website abrufen. Während die Verwendung des Datentyps „jsonp“ wie eine Lösung erscheinen mag, führt die fehlende JSON-Formatierung der empfangenen Daten zu Syntaxfehlern.

Lösung: Proxy-Server-Integration

Empfohlen Die Lösung besteht darin, eine serverseitige Sprache als Proxy zu verwenden. Dieser Proxy fungiert als Vermittler, ruft Daten von der externen Domain ab und gibt sie in einem geeigneten Format an die Website des Kunden zurück. Hier ist eine Beispielimplementierung mit jQuery:

$.ajax({
    url: 'proxy.php',
    type: 'POST',
    data: {
        address: 'http://www.google.com'
    },
    success: function(response) {
        // response now contains full HTML of google.com
    }
});
Nach dem Login kopieren

Entsprechendes PHP (proxy.php) zum Abrufen und Zurückgeben der Daten:

echo file_get_contents($_POST['address']);
Nach dem Login kopieren

iFrame-Überlegungen

iFrames unterliegen ebenfalls derselben domänenübergreifenden Anforderungsrichtlinie. Daher ermöglicht die Einbettung eines iFrames aus einer anderen Domäne keinen direkten Datenabruf oder eine direkte Datenmanipulation.

Fazit

Durch die Nutzung eines Proxyservers ist es möglich, Cross zu umgehen -Domänenbeschränkungen und Abrufen von Daten von externen Zielen mithilfe von AJAX. Diese Methode bietet eine unkomplizierte und effektive Lösung, die es Entwicklern ermöglicht, Anwendungen zu erstellen, die nahtlos mit Inhalten aus mehreren Domänen interagieren.

Das obige ist der detaillierte Inhalt vonWie kann ich AJAX verwenden, um Daten von externen Domänen abzurufen?. 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