So verwenden Sie domänenübergreifende Ajax-Anfragen
Dieses Mal zeige ich Ihnen, wie Sie domänenübergreifende Ajax-Anfragen verwenden und welche Vorsichtsmaßnahmen bei der Verwendung domänenübergreifender Ajax-Anfragen gelten. Hier sind praktische Fälle, werfen wir einen Blick darauf.
In diesem Artikel wird die Geschichte eines Neulings erzählt, der auf ein domänenübergreifendes Problem stieß, aber nicht wusste, dass es sich um ein domänenübergreifendes Problem handelte, dann wusste, dass es sich um ein domänenübergreifendes Problem handelte, aber nicht wusste, wie Um es zu lösen, löste ich dann das domänenübergreifende Problem und fand schließlich zwei Möglichkeiten zur Lösung von Ajax. Der gesamte Prozess domänenübergreifender Probleme.
Ich weiß nicht, ob es sich um ein domänenübergreifendes Problem handelt
Der Grund ist folgender: Um die wiederholte Entwicklung wiederzuverwenden und zu reduzieren, muss ein separater Benutzer verwendet werden RechteverwaltungSystem wurde entwickelt, und andere Systeme erhalten Authentifizierungs- und Autorisierungsinformationen. Nennen wir es vorerst System A als Beispiel für den Aufruf von System A. In System B habe ich Ajax verwendet, um die Schnittstelle von System A aufzurufen (das Datenformat ist json). Der Zugriff auf die entsprechende URL in System A kann normalerweise JSON-Daten zurückgeben, aber ich habe Ajax verwendet, um dieselben anzufordern URL in System B ist etwas verwirrend. Das Kind reagierte nicht, als ob nichts passiert wäre. Nach wiederholten Änderungen dieser Art über einen längeren Zeitraum hinweg konnte ich es immer noch nicht lösen, also bat ich meine Kollegen um Hilfe und erinnerte mich daran, dass es sich möglicherweise um ein domänenübergreifendes Ajax-Problem handelte, sodass ich das Problem als domänenübergreifendes Problem löste .
Domänenübergreifend kennen, aber nicht wissen, wie man es löst
Wenn man die genaue Ursache des Problems kennt, bleibt nur noch, eine Lösung für das Problem zu finden. Ich habe lange gegoogelt und unter Anleitung eines Kollegen erneut erfahren, dass Ajax von jQuery über Attribute wie jsonp verfügt, mit denen domänenübergreifende Probleme gelöst werden können.
Eine Lösung finden
Da wir nun wissen, wie wir das domänenübergreifende Problem lösen können, sind der Rest die Implementierungsdetails. Bei der Umsetzung sind Fehler unvermeidbar. Da ich den Unterschied zwischen den beiden Formaten JSON und JSONP nicht verstand, habe ich auch einen Fehler gemacht. Ich habe lange gegoogelt, um ihn zu lösen.
Schauen wir uns zunächst eine einfache Version an, wie man mit jQuerys Ajax domänenübergreifende Probleme auf der Seite löst:
$(document).ready(function(){ var url='http://localhost:8080/WorkGroupManagment/open/getGroupById" +"?id=1&callback=?'; $.ajax({ url:url, dataType:'jsonp', processData: false, type:'get', success:function(data){ alert(data.name); }, error:function(XMLHttpRequest, textStatus, errorThrown) { alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); }}); });
Es ist kein Problem, es so zu schreiben. Zunächst ist die Fehlerverarbeitungsfunktion nur alarmiert („Fehler“). Um die Ursache des Fehlers weiter zu klären, wird die Verarbeitungsfunktion auf die obige Implementierung geändert. Die letzte Alarmzeile wird als „parsererror“ verwendet. Ich war verwirrt, also googelte ich weiter und fand schließlich die Antwort auf den allmächtigen Stackoverflow, den Link finden Sie hier. Der Grund dafür ist, dass sich das Format von JSONP geringfügig vom JSON-Format unterscheidet, sodass der Code auf der Serverseite geringfügig unterschiedlich ist.
Vergleichen Sie den Unterschied zwischen JSON- und JSONP-Format:
JSON-Format:
{ "message":"获取成功", "state":"1", "result":{"name":"工作组1","id":1,"description":"11"} }
JSONP-Format :
callback({ "message":"获取成功", "state":"1", "result":{"name":"工作组1","id":1,"description":"11"} })
Sie können den Unterschied sehen. Der an den Hintergrund übergebene Parameter ist Shenma. Shenma hat eine Ebene mehr als json, callback(). Sie wissen also, wie Sie damit umgehen müssen. Ändern Sie also den Hintergrundcode.
Der endgültige Hintergrund-Java-Code lautet wie folgt:
@RequestMapping(value = "/getGroupById") public String getGroupById(@RequestParam("id") Long id, HttpServletRequest request, HttpServletResponse response) throws IOException { String callback = request.getParameter("callback"); ReturnObject result = null; Group group = null; try { group = groupService.getGroupById(id); result = new ReturnObject(group, "获取成功", Constants.RESULT_SUCCESS); } catch (BusinessException e) { e.printStackTrace(); result = new ReturnObject(group, "获取失败", Constants.RESULT_FAILED); } String json = JsonConverter.bean2Json(result); response.setContentType("text/html"); response.setCharacterEncoding("utf-8"); PrintWriter out = response.getWriter(); out.print(callback + "(" + json + ")"); return null; }
Beachten Sie, dass Sie die Abfrageergebnisse zuerst in mein JSON-Format konvertieren und dann den Parameter verwenden müssen Rückruf zum Hinzufügen einer weiteren Ebene außerhalb von json, es wird zu jsonp. Geben Sie den -Datentyp als JSONP-Ajax für die weitere Verarbeitung an.
Obwohl dies das domänenübergreifende Problem löst, werfen wir einen Blick auf die Ursachen von Parserfehlern. Der Grund dafür ist, dass Daten im JSON-Format blind als Daten im JSONP-Format für die Verarbeitung durch Ajax behandelt werden, was zu diesem Fehler führt. Zu diesem Zeitpunkt sieht der serverseitige Code wie folgt aus:
@RequestMapping(value = "/getGroupById") @ResponseBody public ReturnObject getGroupById(@RequestParam("id") Long id, HttpServletRequest request, HttpServletResponse response){ String callback = request.getParameter("callback"); ReturnObject result = null; Group group = null; try { group = groupService.getGroupById(id); result = new ReturnObject(group, "获取成功", Constants.RESULT_SUCCESS); } catch (BusinessException e) { e.printStackTrace(); result = new ReturnObject(group, "获取失败", Constants.RESULT_FAILED); } return result; }
Dies ist der erste Weg um das Ajax-Cross-Domain-Problem zu lösen Auf diese Weise kommt es zu einem Ende.
Eine Lösung hinzufügen
Die Suche endet nie bei Google und habe zufällig ein jQuery-Plug-in entdeckt – jquery-jsonp, das speziell zur domänenübergreifenden Lösung verwendet wird Probleme.
Mit der Grundlage der ersten Methode ist die Verwendung des JSONP-Plug-Ins relativ einfach und der serverseitige Code erfordert keine Änderungen.
Sehen wir uns an, wie Sie das Plug-in jquery-jsonp verwenden, um domänenübergreifende Probleme zu lösen.
var url="http://localhost:8080/WorkGroupManagment/open/getGroupById" +"?id=1&callback=?"; $.jsonp({ "url": url, "success": function(data) { $("#current-group").text("当前工作组:"+data.result.name); }, "error": function(d,msg) { alert("Could not find user "+msg); } });
Damit ist die Einführung der beiden Möglichkeiten zur Lösung domänenübergreifender Probleme abgeschlossen.
Ergänzung: Es gibt drei Lösungen für domänenübergreifende Ajax-Probleme:
1. Lösen Sie domänenübergreifende Probleme durch ein Zwischenprodukt Übergangsschicht
(1) Verwenden Sie den Web-Proxy-Server, um Anwendungen in verschiedenen Domänen einheitlich über den Proxy-Server zu isolieren. Alle Anwendungen befinden sich unter einem Domänennamen. (Wie Apache, Nginx usw.)
(2)跨域的安全限制都是指浏览器端来说的.服务器端是不存在跨域安全限制的,所以通过本机服务器端通过类似httpclient方式完成“跨域访问”的工作。
2.通过
KI-gestützte App zum Erstellen realistischer Aktfotos Online-KI-Tool zum Entfernen von Kleidung aus Fotos. Ausziehbilder kostenlos KI-Kleiderentferner Erstellen Sie kostenlos Ai Hentai. Einfach zu bedienender und kostenloser Code-Editor Chinesische Version, sehr einfach zu bedienen Leistungsstarke integrierte PHP-Entwicklungsumgebung Visuelle Webentwicklungstools Codebearbeitungssoftware auf Gottesniveau (SublimeText3)
Heiße KI -Werkzeuge
Undresser.AI Undress
AI Clothes Remover
Undress AI Tool
Clothoff.io
AI Hentai Generator
Heißer Artikel
Heiße Werkzeuge
Notepad++7.3.1
SublimeText3 chinesische Version
Senden Sie Studio 13.0.1
Dreamweaver CS6
SublimeText3 Mac-Version
Heiße Themen
1382
52

CrystalDiskMark ist ein kleines HDD-Benchmark-Tool für Festplatten, das schnell sequentielle und zufällige Lese-/Schreibgeschwindigkeiten misst. Lassen Sie sich als Nächstes vom Redakteur CrystalDiskMark und die Verwendung von CrystalDiskMark vorstellen ). Zufällige I/O-Leistung. Es ist eine kostenlose Windows-Anwendung und bietet eine benutzerfreundliche Oberfläche und verschiedene Testmodi zur Bewertung verschiedener Aspekte der Festplattenleistung. Sie wird häufig in Hardware-Reviews verwendet

foobar2000 ist eine Software, die Ihnen jederzeit Musik aller Art mit verlustfreier Klangqualität bietet Spielen Sie das erweiterte Audio auf dem Computer ab, um ein bequemeres und effizienteres Musikwiedergabeerlebnis zu ermöglichen. Das Interface-Design ist einfach, klar und benutzerfreundlich. Es nimmt einen minimalistischen Designstil an, ohne übermäßige Dekoration Es unterstützt außerdem eine Vielzahl von Skins und Themes, personalisiert Einstellungen nach Ihren eigenen Vorlieben und erstellt einen exklusiven Musikplayer, der die Wiedergabe mehrerer Audioformate unterstützt. Außerdem unterstützt es die Audio-Gain-Funktion zum Anpassen der Lautstärke Passen Sie die Lautstärke entsprechend Ihrem Hörzustand an, um Hörschäden durch zu hohe Lautstärke zu vermeiden. Als nächstes lass mich dir helfen

NetEase Mailbox ist eine von chinesischen Internetnutzern weit verbreitete E-Mail-Adresse und hat mit seinen stabilen und effizienten Diensten schon immer das Vertrauen der Benutzer gewonnen. NetEase Mailbox Master ist eine E-Mail-Software, die speziell für Mobiltelefonbenutzer entwickelt wurde. Sie vereinfacht das Senden und Empfangen von E-Mails erheblich und macht unsere E-Mail-Verarbeitung komfortabler. Wie Sie NetEase Mailbox Master verwenden und welche spezifischen Funktionen es bietet, wird Ihnen der Herausgeber dieser Website im Folgenden ausführlich vorstellen und hofft, Ihnen weiterzuhelfen! Zunächst können Sie die NetEase Mailbox Master-App im Mobile App Store suchen und herunterladen. Suchen Sie im App Store oder im Baidu Mobile Assistant nach „NetEase Mailbox Master“ und befolgen Sie dann die Anweisungen zur Installation. Nachdem der Download und die Installation abgeschlossen sind, öffnen wir das NetEase-E-Mail-Konto und melden uns an. Die Anmeldeschnittstelle ist wie unten dargestellt

Cloud-Speicher sind heutzutage aus unserem täglichen Leben und Arbeiten nicht mehr wegzudenken. Als einer der führenden Cloud-Speicherdienste in China hat Baidu Netdisk mit seinen leistungsstarken Speicherfunktionen, der effizienten Übertragungsgeschwindigkeit und dem komfortablen Bedienerlebnis die Gunst einer großen Anzahl von Benutzern gewonnen. Und egal, ob Sie wichtige Dateien sichern, Informationen teilen, Videos online ansehen oder Musik hören möchten, Baidu Cloud Disk kann Ihre Anforderungen erfüllen. Viele Benutzer verstehen jedoch möglicherweise nicht die spezifische Verwendung der Baidu Netdisk-App. Dieses Tutorial führt Sie daher im Detail in die Verwendung der Baidu Netdisk-App ein. Wenn Sie immer noch verwirrt sind, folgen Sie bitte diesem Artikel, um mehr im Detail zu erfahren. So verwenden Sie Baidu Cloud Network Disk: 1. Installation Wählen Sie beim Herunterladen und Installieren der Baidu Cloud-Software zunächst die benutzerdefinierte Installationsoption aus.

MetaMask (auf Chinesisch auch Little Fox Wallet genannt) ist eine kostenlose und beliebte Verschlüsselungs-Wallet-Software. Derzeit unterstützt BTCC die Bindung an die MetaMask-Wallet. Nach der Bindung können Sie sich mit der MetaMask-Wallet schnell anmelden, Werte speichern, Münzen kaufen usw. und bei der erstmaligen Bindung einen Testbonus von 20 USDT erhalten. Im BTCCMetaMask-Wallet-Tutorial stellen wir detailliert vor, wie man MetaMask registriert und verwendet und wie man das Little Fox-Wallet in BTCC bindet und verwendet. Was ist die MetaMask-Wallet? Mit über 30 Millionen Nutzern ist MetaMask Little Fox Wallet heute eines der beliebtesten Kryptowährungs-Wallets. Die Nutzung ist kostenlos und kann als Erweiterung im Netzwerk installiert werden

Nachdem Sie lange auf die Wiedergabetaste des Lautsprechers gedrückt haben, stellen Sie in der Software eine WLAN-Verbindung her und schon können Sie ihn verwenden. Tutorial Anwendbares Modell: Xiaomi 12 System: EMUI11.0 Version: Xiaoai Classmate 2.4.21 Analyse 1 Suchen Sie zunächst die Wiedergabetaste des Lautsprechers und halten Sie sie gedrückt, um in den Netzwerkverteilungsmodus zu gelangen. 2 Melden Sie sich in der Xiaoai Speaker-Software auf Ihrem Telefon bei Ihrem Xiaomi-Konto an und klicken Sie, um einen neuen Xiaoai Speaker hinzuzufügen. 3. Nachdem Sie den Namen und das Passwort des WLAN eingegeben haben, können Sie Xiao Ai anrufen, um es zu verwenden. Ergänzung: Welche Funktionen hat Xiaoai Speaker? 1 Xiaoai Speaker verfügt über Systemfunktionen, soziale Funktionen, Unterhaltungsfunktionen, Wissensfunktionen, Smart Home und Trainingspläne. Zusammenfassung/Hinweise: Für eine einfache Verbindung und Nutzung muss die Xiao Ai App vorab auf Ihrem Mobiltelefon installiert werden.

Apple hat am Dienstag das iOS 17.4-Update veröffentlicht, das eine Reihe neuer Funktionen und Korrekturen für iPhones bringt. Das Update enthält neue Emojis und EU-Nutzer können diese auch aus anderen App-Stores herunterladen. Darüber hinaus stärkt das Update auch die Kontrolle der iPhone-Sicherheit und führt weitere Einstellungsoptionen für den „Schutz gestohlener Geräte“ ein, um Benutzern mehr Auswahl und Schutz zu bieten. „iOS17.3 führt zum ersten Mal die Funktion „Schutz vor gestohlenen Geräten“ ein, die den vertraulichen Informationen der Benutzer zusätzliche Sicherheit verleiht. Wenn der Benutzer nicht zu Hause oder an anderen vertrauten Orten ist, erfordert diese Funktion, dass der Benutzer zum ersten Mal biometrische Informationen eingibt Zeit und nach einer Stunde müssen Sie Informationen erneut eingeben, um auf bestimmte Daten zuzugreifen und diese zu ändern, z. B. um Ihr Apple-ID-Passwort zu ändern oder den Schutz vor gestohlenen Geräten zu deaktivieren.

Mit der rasanten Entwicklung der Netzwerktechnologie wurde auch unser Leben erheblich erleichtert. Eine davon ist die Möglichkeit, verschiedene Ressourcen über das Netzwerk herunterzuladen und zu teilen. Beim Herunterladen von Ressourcen sind Magnetlinks zu einer sehr verbreiteten und bequemen Download-Methode geworden. Wie nutzt man Thunder-Magnet-Links? Im Folgenden werde ich Ihnen eine detaillierte Einführung geben. Xunlei ist ein sehr beliebtes Download-Tool, das eine Vielzahl von Download-Methoden unterstützt, einschließlich Magnet-Links. Unter einem Magnet-Link kann eine Download-Adresse verstanden werden, über die wir relevante Informationen zu Ressourcen erhalten können.
