DX Heroes logo
#api
#engineering

GraphQL vs REST: v čem se liší?

Délka: 

4 min

Publikováno: 

9. června 2026

GraphQL vs REST: v čem se liší?

GraphQL vs REST v jednom odstavci

REST a GraphQL jsou dva styly, jak postavit API, tedy vrstvu, přes kterou si aplikace vyžádají data ze serveru. U RESTu server vystavuje pevné adresy (koncové body) jako /users/42 nebo /users/42/orders a každá vrací data v dané podobě. U GraphQL je obvykle jeden koncový bod a klient pošle dotaz, který popisuje, přesně která pole chce. Zpátky dostane právě je a nic navíc.

Hlavní rozdíl je v tom, kdo určuje podobu odpovědi. U RESTu rozhoduje server; klient bere, co mu který koncový bod dá. U GraphQL rozhoduje klient; v jednom dotazu si řekne o přesně ta pole, která potřebuje.

Lidsky řečeno

Představte si objednávání jídla. REST je daný menu: každý chod (koncový bod) přijde naservírovaný stejně, a když chcete kousek ze dvou chodů, objednáte oba a zbytek necháte. GraphQL je miska podle vašeho výběru: ukážete na přesně ty ingredience, které chcete, a dostanete jednu misku bez ničeho navíc. Dané menu je jednoduché a předvídatelné; vlastní miska zabrání plýtvání, ale potřebuje schopnější kuchyni.

V čem se liší v praxi

  • Získávání dat. REST často potřebuje několik dotazů, aby složil jednu obrazovku, nebo vrátí víc polí, než využijete. GraphQL získá přesně to, co obrazovka potřebuje, jedním dotazem.
  • Verzování. REST API se často verzuje přes /v1, /v2. GraphQL spíš rozvíjí schéma tak, že přidává pole a stará označuje za zastaralá, bez nových verzí.
  • Cachování. REST jede na standardním HTTP cachování, které je vyzrálé a jednoduché. GraphQL obvykle potřebuje řešit cachování v klientovi nebo ve zvláštní vrstvě.
  • Náročnost na naučení. REST je známý a snadno se s ním začíná. GraphQL přidává schéma a dotazovací jazyk, které se váš tým musí naučit a provozovat.

Kdy zvolit které

  • Sáhněte po RESTu, když jsou data poměrně jednoduchá, chcete snadné HTTP cachování, nebo vystavujete veřejné API, které bude předvídatelně používat mnoho klientů.
  • Sáhněte po GraphQL, když mnoho různých klientů (web, mobil, partneři) potřebuje různé výseky složitých, provázaných dat a stahování přebytečných dat nebo řetězce dotazů vás zpomalují.

Na co si dát pozor

  • Berete to jako otázku víry. Spousta firem provozuje obojí, REST pro jednoduché veřejné koncové body, GraphQL tam, kde klienti potřebují flexibilitu. Vybírejte podle případu, ne podle ideologie.
  • Podceníte cenu GraphQL na serveru. Jediný flexibilní dotaz může skrývat náročné dotazování databáze. Bez limitů může jeden klientský dotaz zahltit váš backend.
  • Ukecaný REST. REST API, které klienty nutí do deseti dotazů na jednu obrazovku, je samo o sobě problém. Navrhujte koncové body podle toho, co klienti reálně potřebují.

Související články

  • Co je REST API? - Styl s pevnými koncovými body vysvětlený od základů.
  • Co je GraphQL? - Přístup přes dotazovací jazyk podrobněji.
  • Co je API? - Základní myšlenka, na které oba styly staví.

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.