


Eine kurze Diskussion über den Unterschied zwischen JSON und JSONP und die Verwendung von jQuerys Ajax jsonp_jquery
JSON und JSONP
JSON (JavaScript Object Notation) ist ein leichtes Datenaustauschformat, das zum Austausch von Informationen zwischen Browsern und Servern verwendet wird.
JSONP (JSON With Padding) ist JSON (oder verpacktes JSON), verpackt in einem Funktionsaufruf.
JSON ist ein Datenformat und JSONP ist eine Datenaufrufmethode.
//JSON
{
„Name“: „jd“
}
//JSONP
Rückruf({
„Name“: „jd“
})
Aus Sicherheitsgründen können Skripte (AJAX) nicht auf Inhalte außerhalb dieser Domain zugreifen. Statische Ressourcen sind jedoch nicht durch Domänenrichtlinien eingeschränkt und können Skripte, Stile, Bilder und andere statische Ressourcen aus jeder Domäne laden. JSOP nutzt dieses Prinzip, um eine domänenübergreifende Datenerfassung zu erreichen.
Beispiel 1:
//ShoPrice-Funktion definieren
Funktion showPrice(data) {
Alert("Symbol: " data.symbol ", Preis: " data.price);
}
//ShowPrice-Funktion und Parameter in die Webseite einbinden
Dieses Beispiel zeigt, wie eine JavaScript-Funktion mit statischen JSON-Daten als Parameter aufgerufen wird.
Beispiel 2:
Der erste Funktionsaufruf kann in eine js-Datei geschrieben und auf dem Server abgelegt, mit einem Skript-Tag in die Seite geladen werden, und dieses Tag kann dynamisch erstellt werden.
Der Inhalt von remote.js ist derselbe wie das, was zuvor im Tag geschrieben wurde:
1 showPrice({symbol: 'IBM', Preis: 91,42});
Der dynamisch eingefügte JavaScript-Code übernimmt die zu übergebenden JSON-Daten als Parameter und den Parameter der showPrice-Funktionsaufrufanweisung.
Die Frage ist also: Sollte die Funktion showPrice jedes Mal aufgerufen werden, wenn die Daten abgerufen werden? Dies erfordert eine Vereinbarung zwischen Front-End- und Back-End-Programmierern. Dies führt natürlich zu großen Unannehmlichkeiten, insbesondere wenn die Schnittstelle für die öffentliche Entwicklung geöffnet ist. JSOP wird auf diese Weise verarbeitet: Das Front-End unterstützt die Übergabe eines Callback-Funktionsnamensparameters, das Back-End empfängt den Callback-Funktionsnamensparameter, generiert dann einen Aufruf an die Funktion, übergibt die JSON-Daten als Parameter und fügt sie ein in die Seite ein, wenn es den Client erreicht, um die Ausführung zu starten.
Beispiel 3:
Code mit Rückrufparametern dynamisch einfügen:
Codeausschnitt des in PHP im Backend implementierten JSONP-Dienstes:
$jsonData = getDataAsJson($_GET['symbol']);
echo $_GET['callback'] . '(' . $jsonData . ');';
// Drucken: showPrice({"symbol" : "IBM", "price" : "91.42"});
Es passt gut zur Definition von JSONP und packt JSON-Daten in Funktionsaufrufe.
Die obigen Beispiele stammen von:
Verwendung von JSONP für die domänenübergreifende Kommunikation, Teil 1: Erstellen Sie schnell leistungsstarke Mashups mit JSONP und jQuery
JSONP mit jQuery verwenden
Die Aufrufmethoden von AJAX und JSONP in jQuery sehen sehr ähnlich aus. Lassen Sie sich von diesem Phänomen nicht verwirren. AJAX erhält Nicht-Seiteninhalte über das XMLHttpRequest-Objekt, während JSONP dynamisch <script>-Tags hinzufügt, um Serverskripte aufzurufen. Obwohl jQuery JSONP als eine Form von AJAX kapselt, ist JSONP keine Form oder ein Sonderfall von AJAX. <br /> <br /> <div class="codetitle"><span><a style="CURSOR: pointer" data="8779" class="copybut" id="copybut8779" onclick="doCopy('code8779')"><U>Code kopieren Der Code lautet wie folgt:<div class="codebody" id="code8779"><br /> $.ajax({<br /> URL: „<a href="http://query.yahooapis.com/v1/public/yql">http://query.yahooapis.com/v1/public/yql“,<br /> jsonpCallback: „showPrice“,<br /> jsonp: „callback“,<br /> // Sag jQuery, dass wir JSONP erwarten<br /> Datentyp: „jsonp“,<br /> Daten: {<br /> q: „Titel, Zusammenfassung, URL aus search.news auswählen, wobei query="cat" ist“,<br /> Format: „json“<br /> },<br /> // mit der Antwort arbeiten<br /> Erfolg: Funktion(Daten) {<br /> console.log( data ); // Serverantwort<br /> }<br /> });<br /> <p>Ajax-Anfrageparameterbeschreibung: <p><strong>dataType String <p>Der Datentyp, der voraussichtlich vom Server zurückgegeben wird. Wenn nicht angegeben, trifft jQuery automatisch intelligente Entscheidungen basierend auf den MIME-Informationen des HTTP-Pakets. Beispielsweise wird der XML-MIME-Typ als XML erkannt. In 1.4 generiert JSON ein JavaScript-Objekt und das Skript führt das Skript aus. Die vom Server zurückgegebenen Daten werden dann basierend auf diesem Wert analysiert und an die Rückruffunktion übergeben. Verfügbare Werte: <p>"xml": Gibt ein XML-Dokument zurück, das mit jQuery verarbeitet werden kann. <p>„html“: Gibt reine Text-HTML-Informationen zurück; das enthaltene Skript-Tag wird ausgeführt, wenn es in den Dom eingefügt wird. <p>"script": Gibt Nur-Text-JavaScript-Code zurück. Ergebnisse werden nicht automatisch zwischengespeichert. Es sei denn, der Parameter „Cache“ ist gesetzt. '''Hinweis:''''Bei Remote-Anfragen (nicht unter derselben Domäne) werden alle POST-Anfragen in GET-Anfragen umgewandelt. (Da zum Laden das DOM-Skript-Tag verwendet wird) <p>"json": Gibt JSON-Daten zurück. <p>"jsonp": JSONP-Format. Beim Aufrufen einer Funktion im JSONP-Format, z. B. „myurl?callback=?“, ersetzt jQuery automatisch ? durch den richtigen Funktionsnamen, um die Callback-Funktion auszuführen. <p>"text": Gibt eine einfache Textzeichenfolge zurück<br /> <br /> <strong>jsonp, <br /> <br /> Schreiben Sie den Namen der Rückruffunktion in der JSONP-Anfrage neu. Der Wert wird verwendet, um den „Callback“-Teil in den URL-Parametern von GET- oder POST-Anfragen zu ersetzen, z. B. „callback=?“. Beispielsweise führt {jsonp:'onJsonPLoad'} dazu, dass „onJsonPLoad“ an den Server übergeben wird. <br /> <br /> <strong>jsonpCallback, <br /> <br /> Geben Sie einen Callback-Funktionsnamen für JSONP an. Dieser Wert wird anstelle des von jQuery automatisch generierten zufälligen Funktionsnamens verwendet. Dies wird hauptsächlich verwendet, um jQuery die Generierung eindeutiger Funktionsnamen zu ermöglichen, um die Verwaltung von Anforderungen sowie die Bereitstellung von Rückruffunktionen und Fehlerbehandlung zu erleichtern. Sie können diesen Rückruffunktionsnamen auch angeben, wenn der Browser GET-Anfragen zwischenspeichern soll. Bei der tatsächlichen Verwendung besteht jedoch keine Notwendigkeit, eine Rückruffunktion zu schreiben, wie z. B. showPrice in diesem Beispiel, und es wird kein Fehler gemeldet, wenn Sie sie nicht schreiben, da jQuery bei der Verarbeitung von JSONP und Takes automatisch eine Rückruffunktion für Sie generiert Geben Sie die Daten aus, um die Erfolgsmethode aufzurufen. Es könnte so aussehen: <p><div class="codetitle"><span><a style="CURSOR: pointer" data="75667" class="copybut" id="copybut75667" onclick="doCopy('code75667')"><U>Code kopieren Der Code lautet wie folgt:<div class="codebody" id="code75667"><br /> function success_jsonpCallback(data) { success(data); } <br /> <p>Das Obige ist der gesamte Inhalt dieses Artikels. Haben Sie ein detailliertes Verständnis von JSONP? Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und wir können es gemeinsam besprechen. </script>

Der Hauptunterschied zwischen Python und JavaScript sind die Typ -System- und Anwendungsszenarien. 1. Python verwendet dynamische Typen, die für wissenschaftliche Computer- und Datenanalysen geeignet sind. 2. JavaScript nimmt schwache Typen an und wird in Front-End- und Full-Stack-Entwicklung weit verbreitet. Die beiden haben ihre eigenen Vorteile bei der asynchronen Programmierung und Leistungsoptimierung und sollten bei der Auswahl gemäß den Projektanforderungen entschieden werden.

Ob die Auswahl von Python oder JavaScript vom Projekttyp abhängt: 1) Wählen Sie Python für Datenwissenschafts- und Automatisierungsaufgaben aus; 2) Wählen Sie JavaScript für die Entwicklung von Front-End- und Full-Stack-Entwicklung. Python ist für seine leistungsstarke Bibliothek in der Datenverarbeitung und -automatisierung bevorzugt, während JavaScript für seine Vorteile in Bezug auf Webinteraktion und Full-Stack-Entwicklung unverzichtbar ist.

Python und JavaScript haben jeweils ihre eigenen Vorteile, und die Wahl hängt von den Projektbedürfnissen und persönlichen Vorlieben ab. 1. Python ist leicht zu erlernen, mit prägnanter Syntax, die für Datenwissenschaft und Back-End-Entwicklung geeignet ist, aber eine langsame Ausführungsgeschwindigkeit hat. 2. JavaScript ist überall in der Front-End-Entwicklung und verfügt über starke asynchrone Programmierfunktionen. Node.js macht es für die Entwicklung der Vollstapel geeignet, die Syntax kann jedoch komplex und fehleranfällig sein.

JavaScriptisnotbuiltoncorc; Es ist angehört, dass sich JavaScriptWasdedeSthatrunsonGineoFtencninc.

JavaScript kann für die Entwicklung von Front-End- und Back-End-Entwicklung verwendet werden. Das Front-End verbessert die Benutzererfahrung durch DOM-Operationen, und die Back-End-Serveraufgaben über node.js. 1. Beispiel für Front-End: Ändern Sie den Inhalt des Webseitentextes. 2. Backend Beispiel: Erstellen Sie einen Node.js -Server.

Die Auswahl von Python oder JavaScript sollte auf Karriereentwicklung, Lernkurve und Ökosystem beruhen: 1) Karriereentwicklung: Python ist für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet, während JavaScript für die Entwicklung von Front-End- und Full-Stack-Entwicklung geeignet ist. 2) Lernkurve: Die Python -Syntax ist prägnant und für Anfänger geeignet; Die JavaScript -Syntax ist flexibel. 3) Ökosystem: Python hat reichhaltige wissenschaftliche Computerbibliotheken und JavaScript hat ein leistungsstarkes Front-End-Framework.

Die Kraft des JavaScript -Frameworks liegt in der Vereinfachung der Entwicklung, der Verbesserung der Benutzererfahrung und der Anwendungsleistung. Betrachten Sie bei der Auswahl eines Frameworks: 1. Projektgröße und Komplexität, 2. Teamerfahrung, 3. Ökosystem und Community -Unterstützung.

Einführung Ich weiß, dass Sie es vielleicht seltsam finden. Was genau muss JavaScript, C und Browser tun? Sie scheinen nicht miteinander verbunden zu sein, aber tatsächlich spielen sie eine sehr wichtige Rolle in der modernen Webentwicklung. Heute werden wir die enge Verbindung zwischen diesen drei diskutieren. In diesem Artikel erfahren Sie, wie JavaScript im Browser ausgeführt wird, die Rolle von C in der Browser -Engine und wie sie zusammenarbeiten, um das Rendern und die Interaktion von Webseiten voranzutreiben. Wir alle kennen die Beziehung zwischen JavaScript und Browser. JavaScript ist die Kernsprache der Front-End-Entwicklung. Es läuft direkt im Browser und macht Webseiten lebhaft und interessant. Haben Sie sich jemals gefragt, warum Javascr


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft
