API:REST API

From mediawiki.org
This page is a translated version of the page API:REST API and the translation is 99% complete.

MediaWiki Core REST API vám umožňuje komunikovat s MediaWiki odesíláním požadavků HTTP na rest.php adresy URL. Rozhraní API můžete použít k vytváření aplikací a skriptů, které vyhledávají a zobrazují stránky wiki, získávají mediální soubory a prozkoumávají historii stránek.

Rychlý start

# Hledejte článek o Zemi na anglické Wikipedii $ curl "https://en.wikipedia.org/w/rest.php/v1/search/page?q=earth&limit=1"

Vyzkoušej to

Formát dat

Koncové body REST API vracejí data ve formátu JSON nebo HTML. Typ obsahu podporovaný každým koncovým bodem najdete v odkazu na rozhraní API.

Metody

Rozhraní API podporuje standardní metody požadavků HTTP.

GET Načtení zdroje
HEAD Vrácení HTTP hlavičky pro požadavek GET bez dat odpovědi
POST Vytvoření zdroje
PUT Aktualizace nebo vytvoření zdroj

Struktura URL

Koncové body API sdílejí konzistentní strukturu URL, která zahrnuje základní URL wiki, cestu skriptu wiki a verzi API.

# Struktura URL
[adresa URL projektu]/[cesta skriptu]/rest.php/v[číslo verze]/

# Příklad URL: Získejte historii hlavní stránky anglické Wikipedie
https://en.wikipedia.org/w/rest.php/v1/page/Main_Page/history

Verzování

MediaWiki REST API, navržené tak, aby poskytovalo vývojářům dlouhodobou stabilitu, je verzováno pomocí globálního čísla verze v cestě API (například: /v1/). Podle principů sémantického verzování se verze zvýší, když se koncový bod změní zpětně nekompatibilním způsobem, jako je odstranění vlastnosti odezvy nebo přidání požadovaného parametru. V rámci hlavní verze se API může změnit zpětně kompatibilními způsoby, jako je přidání vlastnosti odezvy nebo volitelného parametru požadavku.

/v1/ (nejnovější) Dostupné na MediaWiki 1.35

Oprávnění a autorizace

REST API je navrženo pro použití s rozšířením OAuth pro ověřování a autorizaci uživatelů. Bez ohledu na metodu ověřování však API reaguje na přítomnost přihlášeného uživatele a vrací obsah odpovídající oprávněním tohoto uživatele.

Přístup k projektům Wikimedia pomocí REST API

REST API můžete použít pro přístup k Wikipedii, Wikislovníku a dalším projektům Wikimedia ve více jazycích. Úplný seznam adres URL projektů Wikimedia naleznete v matici stránek Meta-Wiki.

Limit požadavku

Neexistuje žádný pevný limit pro požadavky na API, ale váš klient může být zablokován, pokud ohrozíte stabilitu webu. Chcete-li zůstat v bezpečné míře požadavků, počkejte na dokončení každého požadavku, než odešlete další požadavek.

Identifikace klienta

Stránky Wikimedia vyžadují HTTP hlavičku User-Agent pro všechny požadavky API. To pomáhá identifikovat vaši aplikaci a zajišťuje, že vás v případě problému mohou kontaktovat správci systému. Klienti, kteří zadávají požadavky bez hlavičky User-Agent, mohou být bez upozornění blokováni IP adresou.

Záhlaví User-Agent může obsahovat uživatelskou stránku na místní wiki, uživatelskou stránku na související wiki používající syntaxi propojení interwiki, URL pro relevantní externí web nebo e-mailovou adresu.

# Preferovaný formát pro záhlaví User-Agent
<jméno klienta>/<verze> (<kontaktní údaje>) <název knihovny/rámce>/<verze>

Pokud voláte API z JavaScriptu založeného na prohlížeči, možná nebudete moci, v závislosti na prohlížeči, ovlivnit hlavičku User-Agent. Chcete-li to obejít, použijte hlavičku Api-User-Agent. Další informace naleznete v zásadách uživatelského agenta Meta-Wiki.

Autorizace

Chcete-li své aplikaci udělit oprávnění jednat jménem uživatele, postupujte podle příručky pro vývojáře OAuth, zaregistrujte svou aplikaci a odešlete požadavky pomocí tokenů OAuth.

Licence a ochranné známky

Obsah Wikimedia lze znovu použít v rámci podmínek stanovených příslušnou licencí. Licence se mohou v jednotlivých projektech lišit, takže informace o licencích a opětovném použití obsahu naleznete u jednotlivých projektů. Například anglický text Wikipedie lze použít za podmínek Creative Commons Attribution Share-Alike licence, zatímco mediální soubory na Wikimedia Commons jsou licencovány jednotlivě, jak je uvedeno na informační stránce souboru. Další informace o licencování a používání ochranných známek naleznete v pokynech pro vývojáře aplikací Meta-Wiki.

Omezení Wikidat

Zatímco REST API je k dispozici na projektech Wikimedia, není plně podporováno Wikidaty. V době psaní mohou některé koncové body vracet neočekávané chyby. Instead, use the Wikidata REST API.

Koncové body rozšíření

Rozšíření MediaWiki mohou zobrazovat koncové body API specifické pro rozšíření pomocí rozhraní REST API. Chcete-li začít, přečtěte si dokumenty rozšíření rozhraní REST API. Dokumentaci pro koncové body REST API poskytované rozšířeními naleznete v dokumentech rozšíření. Rozhraní rozšíření REST API je standardně dostupné na MediaWiki 1.34 přes Příručka:$wgEnableRestAPI a na MediaWiki 1.35 a novější.

Srovnání API

Tato tabulka: zobrazit · diskuse · upravit
API Dostupnost Základ URL Příklad
Akce API MediaWiki je součástí MediaWiki

aktivováno na projektech Wikimedie

/api.php https://cs.wikipedia.org/w/api.php?action=query&prop=info&titles=Země
REST API MediaWiki je součástí MediaWiki 1.35+

aktivováno na projektech Wikimedie

/rest.php https://cs.wikipedia.org/w/rest.php/v1/page/Země
Wikimedie REST API není součástí MediaWiki

k dispozici pouze pro projekty Wikimedie

/api/rest https://cs.wikipedia.org/api/rest_v1/page/title/Země
Rozhraní API v komerčním měřítku pro projekty Wikimedie najdete na stránkách Wikimedia Enterprise

O těchto dokumentech

Tyto dokumenty jsou napsány ručně na základě zdrojového kódu MediaWiki Core. Opravy a doplnění jsou vítány Chcete-li sdílet výukový program nebo aplikaci, která používá MediaWiki REST API, přidejte odkaz na šablonu REST API.

Související odkazy