In Ihrem Code-Snippet versuchen Sie, JSON-Daten aus einem zu analysieren Dienst, der mit der AJAX-Funktion von jQuery auf einer anderen Domäne gehostet wird. Allerdings erfordern domänenübergreifende AJAX-Anfragen zusätzliche Überlegungen, um erfolgreich zu funktionieren.
Standardmäßig beschränken Browser AJAX-Anfragen auf URLs gleichen Ursprungs aus Sicherheitsgründen. Um dies zu umgehen, müssen Sie JSONP (JSON mit Padding) implementieren, das es Ihnen ermöglicht, domänenübergreifende Anfragen mithilfe eines <script>-Befehls zu stellen. Tag.</p>
<p><h3>Methodeninjektion</h3></p>
<p>In Ihrem serverseitigen Code müssen Sie Methodeninjektion unterstützen. Wenn Sie jQuery mit „dataType: ‚jsonp‘“ verwenden, hängt es einen Abfrageparameter mit einem zufällig generierten Methodennamen an die URL an. Ihr Server muss dann die JSON-Antwort mit diesem Methodennamen als Funktionsaufruf umschließen.</p>
<p><h3>Korrigierter Code</h3></p>
<p>Stellen Sie sicher, dass Ihr Server die JSON-Antwort korrekt umschließt der in der Abfragezeichenfolge übergebene Methodenname. Wenn Ihre Abfragezeichenfolge beispielsweise „?callback=my_callback_method“ enthält, sollte Ihr Server antworten mit:</p>
<p>my_callback_method({your json serialized data});</p>
<p>Sobald dies implementiert ist, sollte Ihr jQuery-Code antworten Analysieren Sie die JSON-Daten erfolgreich:</p>
<p><br><script type="text/javascript"><br>var result;<br>function jsonparser1() {</p>
<p>} <br></script>
Das obige ist der detaillierte Inhalt vonWie kann ich mit jQuery domänenübergreifende AJAX-JSONP-Anfragen stellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!