Co je REST API?
REST API je rozšířený způsob, jak stavět API komunikující přes web. REST (Representational State Transfer) je sada zvyklostí, ne přísný standard. Hlavní myšlenka je jednoduchá: na všechno se díváme jako na zdroj, každý zdroj má svou webovou adresu (URL) a pracujeme s ním stejnými HTTP metodami, jaké už používá váš prohlížeč.
Nejčastěji potkáte čtyři: GET pro čtení, POST pro vytvoření, PUT pro úpravu a DELETE pro smazání. Takže GET /users/42 přečte uživatele číslo 42 a DELETE /users/42 ho smaže. Odpovědi obvykle přijdou ve formátu JSON, který přečte člověk i program.
Lidsky řečeno
Představte si REST API jako dobře uspořádaný sklad s jasně označenými regály. Každá věc má pevnou adresu v polici. Nevymýšlíte pokaždé nový způsob, jak si o věc říct. Pořád používáte tytéž jednoduché úkony: přines tuhle, polož sem novou, vyměň to v té polici, vyhoď tamtu. Pokaždé stejná slovesa, jen jiná adresa police.
Proč na tom záleží
- Je to výchozí volba. Většina veřejných webových služeb, od platebních bran po data o počasí, nabízí REST API, takže dovednosti využijete všude.
- Je předvídatelné. Jakmile znáte zvyklosti, nové REST API vám přijde povědomé. Stejné metody dělají stejnou práci.
- Stojí na webu. REST jede po obyčejném HTTP, takže funguje se stávajícími nástroji, vyrovnávací pamětí i zabezpečením, bez ničeho exotického.
Na co si dát pozor
- Příliš mnoho, nebo příliš málo dat. Pevný endpoint často vrátí víc dat, než potřebujete, nebo míň, takže musíte volat víckrát. Na složitější potřeby se podívejte na GraphQL.
- Přehlížené stavové kódy. REST API hlásí úspěch nebo chybu přes HTTP kódy jako
200,404a500. Berte je jako součást odpovědi, ne jako šum. - Chybějící verzování. Když změníte podobu odpovědi, starším klientům se kód rozbije. Než uděláte změny, které něco rozbijí, API zaverzujte (třeba
/v2/users). - Zapomenuté limity. Většina poskytovatelů omezuje, kolik požadavků smíte poslat. Když limit překročíte, volání začnou selhávat.
Související články
- Co je API? - Širší pojem, na kterém REST staví, vysvětlený od základu.
- Co je GraphQL? - Jiný styl API, kde si klient řekne přesně o ta data, která potřebuje.
- Zlepšete adopci API s OpenAPI specifikací - Nejrozšířenější standard pro dokumentaci REST API.
Chcete být o krok napřed?
Nenechte si utéct naše nejlepší postřehy. Žádný spam, jen praktické analýzy, pozvánky na exkluzivní eventy a shrnutí podcastů přímo do vaší schránky.
