První REST API: chyba, která zničí i funkční odpověď

Z Mazovia
Wersja z dnia 14:38, 23 wrz 2026 autorstwa DrusillaVelez3 (dyskusja | edycje) (Utworzono nową stronę "Nábytek vybírejte podle výšky, ne podle šířky. Postel s úložným prostorem pod roštem nahradí komodu i sezónní výbavu. Noční stolky zavěste na zeď nebo použijte úzké police místo skříněk s nohami, které zabírají podlahu. Skříň volně stojící uprostřed místnosti je nejčastější chyba: v malé ložnici patří ke zdi, ideálně do výklenku nebo rohu. Pokud to jde, nechte podlahu co nejvíc viditelnou – souvislá plocha působ…")
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)

Nábytek vybírejte podle výšky, ne podle šířky. Postel s úložným prostorem pod roštem nahradí komodu i sezónní výbavu. Noční stolky zavěste na zeď nebo použijte úzké police místo skříněk s nohami, které zabírají podlahu. Skříň volně stojící uprostřed místnosti je nejčastější chyba: v malé ložnici patří ke zdi, ideálně do výklenku nebo rohu. Pokud to jde, nechte podlahu co nejvíc viditelnou – souvislá plocha působí vzdušněji než koberec přes celou místnost.

Funguje to i u věcí, které mají citovou hodno

Na závěr jedno praktické doporučení. Neplánujte oba stadiony v jednom výletu jako povinnou položku. Každý si žádá jiný den a jiné tempo. V Miláně přijdťe dřív, projděte se kolem a nechte si čas na cestu zpět, protože po závěrečném hvizdu je doprava přeplněná. V Mnichově naopak počítejte s tím, že odjezd vlakem po zápase je organizovaný a chvíli trvá, než se davy dostanou na nádraží. Kdo to ví předem, ten se vyhne zbytečnému stresu.

Začněte shora dolů a od suchého k mokrému. Prach z polic, lustru a skříněk padá na podlahu, takže nemá smysl utírat podlahu jako první. Nejdřív setřete prach, protřete parapety a rámy, potom teprve vysajte a vytřete. Stejná logika platí v koupelně: nejprve odstraníte vodní kámen a usazeniny, pak teprve lesknete kohoutky. Kdo tohle pořadí obrátí, ten si práci zdvojnásobí.

Formát odpovědi držte konzistentní. Pokud vracíte JSON, vracejte JSON vždy, i pro chyby. Stejně tak hlavička Content-Type musí odpovídat skutečnosti. Častá chyba je poslat text/html s JSON obsahem, což některé klienty zmate. U seznamů myslete na stránkování. Nikdy nevracejte všechny záznamy najednou, jinak při růstu dat přestane API odpovídat. Použijte parametry jako limit a offset nebo kursor. A v odpovědi uveďte, kolik záznamů celkem existuje, aby klient věděl, jestli má načítat dál.

Další typický omyl je podcenit kontrolu u vchodu. V Itálii bývá důslednější, s osobní prohlídkou a omezením zavazadel. Velké batohy a deštníky si raději nechte na ubytování. V Mnichově je systém plynulejší, ale zase platí přísnější pravidla pro předměty, které by mohly sloužit jako zbraň. Nepomůže dohadování, pravidla jsou daná.

Žloutnutí listů u pokojových rostlin bývá nejčastěji následkem chyb v zalévání. Jenže dvě zdánlivě protichůdné příčiny – příliš málo vody a příliš mnoho vody – vypadají na první pohled podobně. Rozdíl přitom rozhoduje o tom, zda rostlině uškodí další zálivka, nebo naopak přeschnutí substrátu. Než tedy sáhnete po konvi, zastavte se a zjistěte, co se v květináči skutečně děje.

První REST API často vzniká jako jednoduchý skript: klient pošle požadavek, server vrátí data. Jenže právě tady se začínají dít chyby, které se projeví až ve chvíli, kdy se na stejný endpoint připojí druhý klient nebo když se data změní. Základem je pochopit, že REST není knihovna ani framework, ale způsob, jak spolu komunikovat přes HTTP. Požadavek má vždy metodu, adresu, hlavičky a případně tělo. Odpověď má stavový kód, hlavičky a tělo. Pokud tohle rozlišení ignorujete, dřív nebo později narazíte.

Stavové kódy nejsou dekorace Server musí vracet správný stavový kód. 200 znamená úspěch, 201 vytvoření, 204 úspěch bez těla. 400 je chyba na straně klienta, 401 chybějící autentizace, 403 nedostatečné oprávnění, 404 nenalezeno, 409 konflikt, 422 nezpracovatelná data. Když na všechno posíláte 200 s tělem typu {"error": "něco se pokazilo"}, klient nemá šanci strojově rozlišit úspěch od chyby. A to je přesně ten moment, kdy se z jednoduchého API stane neudržovatelný kód.

San Siro a Allianz Arena spojuje jediné: fotbal se v nich hraje na nejvyšší úrovni. Všechno ostatní je jinak. Milánský stadion stojí v husté zástavbě, betonový kolos, který prošel řadou přestaveb a nese stopy desetiletí. Mnichovská aréna je naopak účelová stavba z jednadvacátého století, postavená na volné ploše za městem. Kdo chce porovnávat, musí nejdřív pochopit, že nejde o lepší a horší, ale o dva odlišné zážitky.

Co si ověřit předem, ať nejedete zbytečně U obou stadionů platí, že vstupenky na běžný ligový zápas a na evropský pohár se shánějí úplně jinak. Na velké zápasy se prodávají přes oficiální klubový systém, často s podmínkou členství nebo předchozí historie nákupů. Přeprodejci nabízejí místa i mimo oficiální kanály, ale tady vzniká nejčastější chyba: lidé zaplatí a u turniketu zjistí, že vstupenka je neplatná. Kupujte jen tam, kde je jasně uvedeno, kdo vstupenku vydal, a uložte si potvrzení.

Nejčastější chyba je záměna GET a POST. GET se používá pro čtení a nesmí měnit stav na serveru. POST pro vytvoření nového zdroje. Pokud GETem mažete nebo měníte data, narušujete idempotenci a cache. Prohlížeč nebo proxy server může požadavek zopakovat a vy smažete dvakrát. Stejně tak PUT slouží k nahrazení celého zdroje, PATCH k částečné úpravě. Když pošlete PUT s polovinou polí, zbytek se může vymazat. Vždy dopředu určete, co která metoda znamená, a držte se toho i v dokumentaci.