Jak psát dokumentaci API, aby frontend a backend spolupracovaly

From IT-Core
Jump to navigation Jump to search

Dalším častým problémem je práce s více remoty. Pokud používáte fork nebo více vzdálených repozitářů, mějte jasně pojmenované remote větve a pravidelně je synchronizujte. Nezapomínejte, že push do feature větve by měl být častý, ale vždy s jasnou zprávou o tom, co děláte. Vyhněte se pushování do cizích větví, pokud nejste vyzváni. To je zdroj nedorozumění a chyb.

Mezi typické chyby patří také logování tokenů v serverových logách, což může vést k jejich úniku. Nikdy tokeny nezapisujte do výpisů chyb ani do monitorovacích nástrojů. Dále si dejte pozor na to, aby token nebyl součástí URL, protože se může dostat do historie prohlížeče nebo do referrer hlavičky. Vždy jej přenášejte v hlavičce Authorization. Pokud používáte veřejné API, nezapomeňte na řádné omezení rychlosti požadavků a na to, aby tokeny měly minimální oprávnění podle principu nejnižších privilegií.

Nakonec vše změřte znovu, ideálně z více zařízení a připojení. Nestačí se dívat na rychlost z rychlého domácího internetu – otestujte si web i z mobilu s pomalejším připojením. Buďte trpěliví: optimalizace není jednorázová akce, ale průběžná péče. Sledujte, které změny přinesly největší efekt, a podle toho upravujte další postup. I malé zlepšení rychlosti může znamenat vyšší spokojenost uživatelů a lepší pozice ve výsledcích vyhledávání.

Dalším častým problémem je odhadování „ve vzduchu" bez znalosti existujícího kódu. Pokud neznáte architekturu, použité knihovny nebo kvalitu testů, je váš odhad jen tipování. Před odhadem si projděte relevantní části kódu, podívejte se na podobné úkoly z minulosti a zjistěte, jak dlouho reálně trvaly. Historická data z vašeho týmu jsou nejcennějším zdrojem – pokud je nemáte, začněte si je zaznamenávat.

Velkou úsporu přinese odstranění zbytečných knihoven a pluginů. Každý skript, který načítáte, zvyšuje počet požadavků a prodlužuje čas. Zkontrolujte si analytické nástroje, widgety a chatovací okna – často běží i tam, kde je nikdo nevyužívá. Místo jednoho velkého JavaScriptového souboru zvažte jeho rozdělení na menší části, které se načtou pouze tehdy, když jsou skutečně potřeba. Tento přístup se nazývá lazy loading a výrazně zlepšuje vnímání rychlosti.

Nejlepší způsob, jak začít, je vyzkoušet si veřejné API, které nevyžaduje registraci nebo klíč. Otevři si nástroj pro vývojáře v prohlížeči (klávesa F12) a přejdi do záložky Konzole. Do příkazového řádku napiš příkaz pro získání dat, třeba z API, které poskytuje aktuální čas nebo počasí. Použij metody jako fetch nebo axios – v konzoli prohlížeče funguje bez dalšího nastavení. Po odeslání požadavku uvidíš odpověď ve formátu JSON, což je strukturovaný text, který se snadno čte i zpracovává.

Jak správně synchronizovat větve Když potřebujete do své feature větve dostat změny z hlavní větve, nepoužívejte merge, ale rebase. Rebase přehraje vaše commity na nový základ a vytvoří lineární historii. To usnadňuje pozdější code review a snižuje riziko konfliktů. Postup je jednoduchý: přepnete se na hlavní větev, pullnete změny, přepnete se zpět na svou větev a provedete rebase. Při rebase se mohou objevit konflikty, které je nutné vyřešit. To je normální, ale pokud je to časté, znamená to, že se vaše větve příliš odchýlily.

Dalším krokem je komprese textových souborů. Server může posílat HTML, CSS a JavaScript ve zmenšené podobě, prohlížeč je pak automaticky rozbalí. Toto nastavení najdete v konfiguraci webového serveru. Nevhodné je ale vše komprimovat – moderní formáty obrázků jsou často už samy komprimované a další stlačení jim nepomůže. Také si dejte pozor, abyste nekomprimovali soubory, které jsou už tak malé, protože to jen zbytečně zatěžuje procesor.

Při tvorbě payloadu vkládejte pouze nezbytné údaje, jako je identifikátor uživatele, role a případně čas vydání. Nikdy do tokenu neukládejte citlivá data, jako jsou hesla nebo platební údaje. Pamatujte, že JWT je podepsaný a zakódovaný, ale ne šifrovaný – kdokoli s tokenem si může jeho obsah přečíst. Pokud potřebujete přenášet citlivé informace, zvažte šifrování celého tokenu, ale to komplikuje validaci a není to běžný postup.

Nasazení JWT není složité, ale vyžaduje pečlivost. Začněte s krátkou dobou platnosti, použijte bezpečný algoritmus, striktně validujte všechny náležitosti tokenu a věnujte pozornost úložišti na straně klienta. Testujte své API proti běžným útokům, jako je pozměnění tokenu nebo opětovné použití odcizeného tokenu. Jen tak zajistíte, že vaše autentizace bude skutečně spolehlivá a vaše data zůstanou v bezpečí.