API:Cross-site requests/de

Wenn ein Benutzerskript oder Gadget einen API-Aufruf für eine andere MediaWiki-Site ausführen muss (z. B. muss ein Skript in der englischen Wikipedia Bildinformationen in Commons überprüfen), muss es JSONP oder CORS anwenden.

Benutzung von JSONP
Die API  nimmt einen „Callback“-Parameter an, der eine JavaScript-Funktion benennt, in das das JSON-Ergebnis eingebunden wird. Das kann man einsetzen, um die API auf einer entfernten Seite aufzurufen, indem man dynamische -Tags zum Dokument hinzufügt.

Benutzung von CORS
Für die MediaWiki-API muss der  als Abfragezeichenfolgenparameter angegeben werden, wobei der Wert die Site ist, von der die Anforderung stammt, und mit dem vom CORS-Protokoll geforderten Origin-Header abgeglichen wird. Beachte dass dieser Parameter in allen vorherigen Anfragen eingebunden werden muss und auch in den Teil der Abfrage-Strings der anfragenden URI, sogar bei POST-Anfragen.

When the  parameter is supplied and the request does not return a successful CORS response, MediaWiki≥1.30  will return a   header with a brief reason for the failure, e.g. in case of mismatched origin or unsupported headers in a   request header.

Nicht authentifizierte CORS-Anfragen
Unauthenticated CORS requests may be made from any origin by setting the  request parameter to. In this case MediaWiki will include the  header in the response and will process the request as if logged out.

Authentifizierte CORS-Anfragen
Um eine authentifizierte CORS-Anfrage durchzuführen, muss  des entfernten Wikis so eingestellt sein, dass es die Herkunftsseite erlaubt. Falls die CORS-Herkunftsübeprüfung durchläuft, wird MediaWiki den -Header in die Antwort einbinden, sodass Authentifizierungs-Cookies gesendet werden können.

Siehe Manual: CORS für Anleitungen wie CORS-Abfragen in JavaScript gehandhabt werden.

Zusätzliche Anmerkungen

 * Detailed differences between JSONP and CORS are available at CORS vs JSONP.