API:Webwerwe versoeke - MediaWiki
As 'n gebruikerskrip of gadget 'n API moet oproep teen 'n ander MediaWiki-werf(bv.'N skrip op die Engelse Wikipedie moet beeldinligting op Commons nagaam),moet ditJSONP of CORS
1 JSONP gebruik
1.1 = Voorbeeld
1.2 Kry versoek
2 CORS gebruik
2.1 Ongeautoriseerde CORS-versoeke
2.1.2 Kry versoek
2.2 Geverifieerde CORS versoeke
3 Addisionele notas
Enige JSONP versoeke sal verwerk word asof u afgemeld is (dit wil sê as 'n anonieme gebruiker) selfs nadat u op die eksterne wiki aangemeld het.
Kry de titels van drie ewekansige bladsye van die Engelse Wikipedia
* Die funksie om die resultaat toe te maak.
var pages = response.query.random; // Verwerk die uitvoer om die titels te kry.
var scriptTag = document.createElement("script"); // Skep dinamies 'n "skrif" etiket.
scriptTag.src = apiEndpoint + "?" + params + "&callback=callback"; // Wys na die navraagstring.
document.body.appendChild(scriptTag); // Voeg die skripmerk by die dokument
Die MediaWiki API vereis dat die oorsprong verskaf word as 'n navraag stringparameter,met die webwerf waarvandaan die versoek ontstaan,wat ooreenstem met die oorsprongkop wat deur die CORS protokol benodig word. Let daarop dat hierdie parameter ingesluit moet word in enige voorvlugversoek, en dat dit ook in die vrae-stringgedeelte van die versoek-URI ingesluit moet word, selfs vir POST-versoeke.
Wanneer die origin parameter verskaf word en die versoek nie 'n suksesvolle CORS antwoord lewer nie, sal MediaWiki ≥1.30 'n $verwerpingskopie terugstuur met 'n kort rede vir die mislukking, bv. in die geval van oorsprong wat nie ooreenstem nie of kopkoppe wat nie ondersteun word nie, in 'n $req headers versoek kop.
Ongeverifieerde CORS versoeke kan van enige oorsprong gerig word deur die origin versoekparameter op * te stel. In hierdie geval sal MediaWiki die Access-Control-Allow-Credentials: false kop in die antwoord insluit en die versoek verwerk asof dit afgemeld is.
Kry die name van die eerste drie beelde van Wikimedia Commons af.
* Stuur die versoek om die beelde te kry
var allimages = response.query.allimages; // Vewerk die uitvoer om die beelde te kry
Geverifieerde CORS versoeke
Om 'n geverifieerde CORS-versoek te rig, moet die eksterne wiki se $wgCrossSiteAJAXdomains instelling ingestel word om die oorsprongwebwerf toe te laat. As die CORS-oorsprongstjek slaag, sal MediaWiki die Access-Control-Allow-Credentials: true kop in die antwoord insluit, dus kan verifikasiekoekies gestuur word.
Gedetailleerde verskille tussen JSONP en CORS is beskikbaar by CORS vs JSONP.
Retrieved from "https://www.mediawiki.org/w/index.php?title=API:Cross-site_requests/af&oldid=3620835"
This page was last edited on 17 January 2020, at 19:55.