Heim  >  Artikel  >  Web-Frontend  >  JQuery verwendet $.ajax oder $.getJSON, um JSON-Daten domänenübergreifend abzurufen.

JQuery verwendet $.ajax oder $.getJSON, um JSON-Daten domänenübergreifend abzurufen.

韦小宝
韦小宝Original
2018-01-15 11:31:161698Durchsuche

In diesem Artikel wird hauptsächlich der Implementierungscode von JQuery vorgestellt, der $.ajax oder $.getJSON verwendet, um JSON-Daten domänenübergreifend abzurufen. Freunde, die mit JQuery nicht vertraut sind, können auf diesen Artikel verweisen

JSON-Daten können über JQuery domänenübergreifend abgerufen werden, es muss jedoch klar sein, dass JQuery keine domänenübergreifenden Daten in einem beliebigen JSON-Format abrufen kann. Spezifische JSON-Daten zum domänenübergreifenden Lesen durch JQuery müssen über den Server ausgegeben werden. Möglicherweise haben Sie noch keine Ahnung davon, und das ist in Ordnung. Dieser Artikel wird diese Technologie auf die einfachste und verständlichste Weise vorstellen. Ich glaube, dass jeder sie leicht verstehen und tatsächlich anwenden kann.

JQuery ruft JSON-Daten in derselben Domäne ab

Zuerst zitieren Sie die jQuery-Bibliotheksdatei:

f4f9c11ca9a0c7357745a64d46ec656e2cacc6d41bbb37262a98f745aa00fbf0

jQuery-Code:

var url="http://localhost:8000/user.php";
$(function(){
 $.getJSON(url,function(data){
 alert (data.name);
})
});

Servercode (PHP):

<?php 
header(&#39;Content-Type:text/html;Charset=utf-8&#39;); 
$arr = array( 
 "name" => "xiaoming", 
 "pass" => "123456"
); 
echo json_encode($arr); 
?>


Server gibt String zurück:

{"name":"xiaoming " ,"pass":123456}

JQuery ruft domänenübergreifende JSON-Daten ab

Zitieren Sie zunächst die jQuery-Bibliotheksdatei:

1cf312b90d3e0cac58301be3cacfd7752cacc6d41bbb37262a98f745aa00fbf0

jQuery-Code:

var url="http://localhost:8000/user.php?jsoncallback=?";
$(function(){
 $.getJSON(url,function(data){
 alert (data.name);
})
});

Servercode (PHP):

<?php 
header(&#39;Content-Type:text/html;Charset=utf-8&#39;); 
$arr = array( 
 "name" => "xiaoming", 
 "pass" => "123456"
); 
echo $_GET[&#39;jsoncallback&#39;]."(".json_encode($arr).")"; 
?>

Server gibt Zeichenfolge zurück (Parameter „jsoncallback muss übergeben werden“):

jQuery19003894091040769696_1505708469340({"name": "xiaoming", "pass" :123456 })

Erklärung: Der von jQuery übergebene Wert ist jedes Mal anders.

Der Unterschied zwischen dem Abrufen von JSON-Daten in derselben Domäne durch JQuery und domänenübergreifenden Punkten:

1) Die Schreibmethode von jQuery ist unterschiedlich zusätzlicher Parameter „jsoncallback=?“

2) Die serverseitige Rückgabezeichenfolge wird anders geschrieben. Beim Überqueren von Domänen müssen Sie den Eingabewert „‚jsoncallback‘“ verwenden. Das konstruierte Zeichenfolgenformat lautet: jsoncallback-Eingabewert (ursprüngliche JSON-Zeichenfolge) verwenden, achten Sie darauf, Klammern zu verwenden, um die ursprüngliche JSON-Zeichenfolge einzuschließen.

Zusammenfassung

Durch die Einführung in diesem Artikel sollte jeder verstehen, dass Sie andernfalls zunächst einen speziellen JSON-String auf der Serverseite erstellen müssen, wenn Sie möchten, dass jQuery JSON-Daten domänenübergreifend liest Glücklicherweise ist die

Konstruktionsmethode

sehr einfach und Sie können sie anhand der Beispiele im Artikel auf einen Blick verstehen.

jQuery + Ajax zum Abrufen domänenübergreifender JSON-Daten

Im vorherigen Beispiel wurde $.getJSON verwendet, um domänenübergreifende JSON-Daten zu erhalten. Tatsächlich verwenden wir $ .ajax-Methode Das Gleiche ist möglich.

Zitieren Sie zunächst die jQuery-Bibliotheksdatei: