JSONP Cross Domain AJAX Aufruf

Das ist nicht wirklich Ajax im eigentlichen Sinne. Aber wenn die Daten auf einer anderen Domain liegen, die eigentlich per CORS kein Cross-Domain Aufruf unterstützen, kann JSONP helfen.

Dabei wir eine externe Ressource so eingebunden, das sie nach dem laden selbst eine Funktion aufruft. Der Funktionsname kommt daher per ?GET Parameter.

	/* 
	Die Funktion die nach dem Laden aufgerufen werden soll
	Muss definiert sein, bevor die externe Ressource geladen wird
	*/
	function response( data ) {
		console.log( data );
		/* Tue Zeug mit den Daten */
	}
 
	/* 
	(1) Script Element erstellen
	(2) Adresse festlegen mit Namen der Callback Funktion
	(3) Ressource einfügen und laden lassen - Funktion wird nach dem Laden automatisch ausgeführt
	*/
	let externe_script_ressource = document.createElement ('script' );
	externe_script_ressource.src = 'https://foo.bar/api/?callback=response';
	document.body.appendChild( externe_script_ressource );

Das Codebeispiel ist von plainsjs.com » Ajax


Page Tools