Ich erhalte eine Fehlermeldung: "Uncaught ReferenceError: getData ist nicht definiert", wenn Sie das JSON-Objekt in meine "getData" -Funktion übergeben.Uncaught Reference Error mit JSONP
Ich habe den Datentyp, Skripttyp, mit der Callback-Funktion fiedled ohne Erfolg überprüft. Ich habe versucht, den zurückgegebenen Wert zu analysieren, falls sein Textformat vorhanden ist. Beim Überprüfen des Elements verweist der Fehler auf das 'getData' im JSON-Objekt.
Ich habe das Skript unten hart codiert.
<html>
<head>
<script type='text/javascript' src="https://api.icndb.com/jokes/random?callback=getData"></script>
</head>
Returned JSON:
(function() { getData({ "type": "success", "value": { "id": 246, "joke": "Chuck Norris? sperm is so badass, he had sex with Nicole Kidman, and 7 months later she prematurely gave birth to a Ford Excursion.", "categories": [] } }); })();
JS:
function getData(data) {
console.log(data);
}
Was ist Ihre Frage? Der Fehler scheint mir ziemlich klar zu sein: Im Moment wird das Skript ausgewertet, 'getData' ist nicht definiert. Stellen Sie sicher, dass Sie "getData" definieren, bevor Sie das andere Skript hinzufügen. –
* "Der Fehler verweist mich auf die 'getData' im JSON-Objekt" * Um klar zu sein: Die Antwort ist nicht JSON. Es ist JavaScript-Code. Verpasse den Namen "JSONP", es hat nichts mit JSON zu tun. Sie fügen nur ein externes JavaScript-Skript ein (das dynamisch generiert wird). –
Danke, Felix. Sollte ich den Callback nicht verwenden, um auf Daten in meiner getData-Funktion zuzugreifen? –