Soubory cookie vs localStorage

Nedávno jsem byl pověřen otázkou během rozhovoru s velkou společností. Otázka zněla: „Řekněte mi rozdíl mezi cookies a localStorage?“ A ačkoli jsem měl velmi širokou představu o tom, jaké by mohly být rozdíly, myslel jsem, že se do tohoto tématu ponořím poněkud více.

Úvod do cookies

Co jsou to cookies? No, určitě vám mohu říct, že to není to, co byste našli ve vašem občerstvení, když toužíte po sladkých sladkostech. Soubory cookie jsou ve skutečnosti malé soubory, které jsou umístěny v počítači uživatele. Jsou navrženy tak, aby uchovávaly velkorysé množství dat specifických pro klienta a web, a mohou k nim přistupovat buď webový server, nebo klientský počítač. Důvodem je to, aby server mohl doručit stránku přizpůsobenou konkrétnímu uživateli, nebo samotná stránka může obsahovat nějaký skript, který zná data v cookie, a proto je schopen přenášet informace z jedné návštěvy webové stránky. další.

Co tedy obsahuje cookie? Každý soubor cookie je ve skutečnosti malá vyhledávací tabulka obsahující dvojice hodnot klíče a dat. Jakmile je soubor cookie načten kódem na serveru nebo v klientském počítači, lze data načíst a použít k vhodnému přizpůsobení webu webové stránce.

Cookies jsou do značné míry pohodlným způsobem, jak přenášet informace z jedné relace na webové stránce do druhé nebo mezi relacemi na souvisejících webech, aniž by bylo nutné zatěžovat serverový stroj velkým množstvím dat. Pokud bychom měli ukládat data na server bez použití cookies, pak by bylo obtížné získat informace o konkrétním uživateli, aniž by bylo nutné při každé návštěvě webu přihlašovat. Proto lze soubor cookie jednoduše použít, pokud je k dispozici velké množství informací. Kromě toho může být vytvořen soubor cookie, který bude přetrvávat po libovolnou dobu.

Úvod do localStorage

localStorage je způsob, jak ukládat data do počítače klienta. Umožňuje uložení párů klíč / hodnota ve webovém prohlížeči a ukládá data bez data vypršení platnosti. localStorage je přístupný pouze prostřednictvím JavaScriptu a HTML5. Uživatel má však možnost vymazat data / mezipaměť prohlížeče a vymazat všechna data localStorage. Na webové úložiště lze nahlížet zjednodušeně jako na zlepšení souborů cookie, což poskytuje mnohem větší kapacitu úložiště. Dostupná velikost je 5 MB, což je více místa pro práci než s běžným souborem 4 kB. Kromě localStorage se data neposílají zpět na server pro každý požadavek HTTP (HTML, obrázky, JavaScript, CSS atd.), Což snižuje množství provozu mezi klientem a serverem. Nakonec funguje na zásadě stejného původu, takže uložená data budou dostupná pouze u stejného původu.

Rozdíly mezi cookies a localStorage

Soubory cookie a místní úložiště slouží různým účelům. Cookies slouží hlavně ke čtení na straně serveru, zatímco lokální úložiště lze číst pouze na straně klienta. Kromě ukládání dat je velkým technickým rozdílem velikost dat, která můžete uložit, a jak jsem již zmínil, localStorage vám dává více práce. Na závěr, při řešení těchto dvou otázek je třeba si položit otázku: Ve vaší aplikaci, kdo tato data potřebuje - klient nebo server?