Heim  >  Artikel  >  Web-Frontend  >  Jquery Ajax Cross-Domain-Lösung (JSON-Methode)

Jquery Ajax Cross-Domain-Lösung (JSON-Methode)

高洛峰
高洛峰Original
2017-01-12 10:01:471290Durchsuche

An vielen Stellen in den jüngsten vom Unternehmen entwickelten Projekten sind domänenübergreifende Ajax-Anfragen erforderlich, z. B. mehrere Subdomänennamen
http://a.****.com/index123.aspx,
http:/ /b .****.com/index2.aspx

muss die JSON-Informationen des Benutzers anfordern und dann die Daten verarbeiten. Zuerst haben meine Kollegen und ich viele Methoden ausprobiert und $.ajax() verwendet Get- oder Post-Methoden führen zu URI-Deny-Fehlern. Nach einigem GG fand ich die Lösung und verstand den Grund.

Ab jquery 1.2 unterstützt .getJSON domänenübergreifende Vorgänge. Domänenübergreifende Probleme können mit der Methode jquery.getJSON() gelöst werden. Das Beispiel sieht wie folgt aus

Frontend

JS-Code in HTML
function gettst2() {
$.getJSON("http://ucenter.xxxx.com.cn/ajax/test.aspx?callback=?", { id: "123456", site: "01" },
function(data) {
warning(data.htmls);
document.getElementById("shows").innerHTML = data.htmls;
});
}
gettst2();

Die Verarbeitung in der ASPX.cs-Datei ist
string jsoncall = Request.QueryString("callback");
Response.Write(jsoncall + " ({htmls:test001} )");

Wenn Sie HTML-Code hinzufügen, achten Sie darauf, nicht das /n-Symbol hinzuzufügen, da sonst verstümmelte Zeichen und JS-Fehler auftreten.

Weitere Artikel zu domänenübergreifenden Jquery-Ajax-Lösungen (JSON-Methode) finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
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