JSONP, so weit ich weiß, lädt nur ein Skript von URL, anstatt ein XHR zu machen. Anstatt json/xml/plain-text zurückzugeben, gibt die URL javasript zurück. Das zurückgegebene JavaScript ist lediglich ein Aufruf an eine globale Funktion mit den übergebenen JSON-Daten. jQuery erstellt diese globale Funktion bequem vor der JSONP-Anfrage und sendet sie innerhalb der JSONP-Anfrage als "Callback".
Um es einfach auszudrücken, müssen Sie auf $ _GET ['Callback'] zugreifen (muss $ .get für domänenübergreifende verwenden) es enthält den Namen der Callback-Funktion. Zum Beispiel:
Dies wird Javascript zurück, die die globale JavaScript-Funktion mit den JSON-Daten aufgerufen wird, die an sie übergeben.
Denken Sie daran, dass dies nicht XHR/Ajax ist, sondern dynamisch ein neues DOM-Skript-Element anhängen, Sie können nicht Ihre Daten POST, also keine $ _POST. Wie würden Sie POST-Daten senden, wenn Sie ein Skriptelement in HTML erstellen? Es sind GET-Daten, die nur übergeben werden können: <script src='someurl.php?this=getdatastuff'></script>
.
Ich denke, das ist, wie alles funktioniert. xb
ersten post du bist code, zweite setzen sie die richtigen überschriften (http://snippets.dzone.com/posts/show/5882)? –