Jaka jest różnica między localStorage, sessionStorage, session I cookies?

Jakie są TECHNICZNE plusy i minusy localStorage, sessionStorage, session i plików cookie i kiedy mogę używać jednego nad drugim?

Author: Makoto, 2013-11-09

8 answers

Jest to pytanie o bardzo szerokim zakresie, a wiele zalet / wad będzie kontekstowych do sytuacji.

We wszystkich przypadkach te mechanizmy przechowywania będą specyficzne dla poszczególnych przeglądarek na poszczególnych komputerach/urządzeniach. Wszelkie wymagania dotyczące ciągłego przechowywania danych w różnych sesjach będą musiały obejmować stronę serwera aplikacji - najprawdopodobniej przy użyciu bazy danych, ale prawdopodobnie XML lub pliku tekstowego / CSV.

LocalStorage, sessionStorage i pliki cookie są klientami rozwiązania pamięci masowej. Dane sesji są przechowywane na serwerze, na którym pozostają pod bezpośrednią kontrolą Użytkownika.

LocalStorage i sessionStorage

LocalStorage i sessionStorage są stosunkowo nowymi API (co oznacza, że nie wszystkie starsze przeglądarki będą je obsługiwać) i są prawie identyczne (zarówno w interfejsach API, jak i możliwościach) z jedynym wyjątkiem persistence. sessionStorage (jak sama nazwa wskazuje) jest dostępny tylko na czas trwania sesji przeglądarki (i jest usuwany, gdy karta lub okno jest zamknięty) - to jednak przetrwać przeładowania strony (źródło DOM Storage guide-Mozilla Developer Network ).

Oczywiście, jeśli dane, które przechowujesz, muszą być dostępne na bieżąco, to localStorage jest preferowany niż sessionStorage - chociaż należy pamiętać, że oba mogą być wyczyszczone przez użytkownika, więc nie należy polegać na ciągłym istnieniu danych w obu przypadkach.

LocalStorage i sessionStorage są idealne do utrzymywania niewrażliwych danych potrzebnych w Skrypty klienckie między stronami(na przykład: preferencje, wyniki w grach). Dane przechowywane w localStorage i sessionStorage można łatwo odczytać lub zmienić z poziomu klienta / przeglądarki, więc nie należy polegać na przechowywaniu poufnych lub związanych z bezpieczeństwem danych w aplikacjach.

Ciasteczka

Dotyczy to również plików cookie, które mogą być trywialnie manipulowane przez użytkownika, a dane mogą być również odczytywane z nich w postaci zwykłego tekstu - więc jeśli chcesz przechowywać poufne dane wtedy sesja jest naprawdę jedyną opcją. Jeśli nie używasz protokołu SSL, informacje o plikach cookie mogą być również przechwytywane podczas transportu, szczególnie w otwartej sieci Wi-Fi.

Po stronie pozytywnej pliki cookie mogą mieć pewien stopień ochrony przed zagrożeniami bezpieczeństwa, takimi jak Cross-Site Scripting (XSS)/script injection, ustawiając flagę tylko HTTP, co oznacza, że nowoczesne (wspierające) przeglądarki uniemożliwią dostęp do plików cookie i wartości z JavaScript (uniemożliwi to również własny, legalny, JavaScript dostęp do nich). Jest to szczególnie ważne w przypadku uwierzytelniających plików cookie, które są używane do przechowywania tokenu zawierającego dane użytkownika, który jest zalogowany - jeśli masz kopię tego pliku cookie, to pod każdym względem stajesz się[21]}tym użytkownikiem, jeśli chodzi o aplikację internetową, i masz taki sam dostęp do danych i funkcji, jakie ma użytkownik.

Ponieważ pliki cookie są wykorzystywane do celów uwierzytelniania i trwałości danych użytkownika, Wszystkie pliki cookie ważne dla strony są wysyłane z przeglądarki do serwera dla każdego żądania do tej samej domeny - obejmuje to oryginalne żądanie strony, wszelkie kolejne żądania Ajax, wszystkie obrazy, arkusze stylów, skrypty i czcionki. Z tego powodu pliki cookie nie powinny być używane do przechowywania dużych ilości informacji. Przeglądarka może również nałożyć ograniczenia na rozmiar informacji, które mogą być przechowywane w plikach cookie. Zazwyczaj pliki cookie są używane do przechowywania tokenów identyfikacyjnych do uwierzytelniania, śledzenia sesji i reklam. Na tokeny zazwyczaj nie są same w sobie czytelnymi dla człowieka informacjami, ale zaszyfrowanymi identyfikatorami powiązanymi z aplikacją lub bazą danych.

LocalStorage vs. sessionStorage vs. Cookies

Jeśli chodzi o możliwości, pliki cookie, sessionStorage i localStorage pozwalają tylko na przechowywanie ciągów znaków - możliwe jest domyślne konwertowanie prymitywnych wartości podczas ustawiania (będą one musiały zostać przekonwertowane z powrotem, aby użyć ich jako ich typu po przeczytaniu), ale nie obiektów lub tablic (możliwe jest JSON serialise them to store them using the API). Przechowywanie sesji zazwyczaj pozwala na przechowywanie wszelkich prymitywów lub obiektów obsługiwanych przez język/framework po stronie serwera.

Po stronie klienta a po stronie serwera

Ponieważ HTTP jest protokołem bezstanowym-aplikacje internetowe nie mają możliwości identyfikacji Użytkownika z poprzednich wizyt po powrocie do witryny sieci web - dane sesji zwykle opierają się na tokenie cookie do identyfikacji użytkownika dla powtarzających się wizyt (chociaż rzadko parametry URL mogą być używane do ten sam cel). Dane będą zwykle miały przesuwny czas wygaśnięcia (odnawiane za każdym razem, gdy użytkownik odwiedza), i w zależności od serwera/ramy dane będą przechowywane w procesie (co oznacza, że dane zostaną utracone, jeśli serwer WWW ulegnie awarii lub zostanie ponownie uruchomiony) lub zewnętrznie na serwerze stanowym lub w bazie danych. Jest to również konieczne w przypadku korzystania z web-farmy (więcej niż jeden serwer dla danej strony internetowej).

Ponieważ dane sesji są w pełni kontrolowane przez Twoją aplikację (po stronie serwera), jest to najlepsze miejsce dla wszystko wrażliwe lub bezpieczne w przyrodzie.

Oczywistą wadą danych po stronie serwera jest skalowalność-zasoby serwera są wymagane dla każdego użytkownika przez czas trwania sesji, a wszelkie potrzebne dane po stronie klienta muszą być wysyłane z każdym żądaniem. Ponieważ serwer nie ma możliwości sprawdzenia, czy użytkownik przechodzi do innej witryny lub zamyka przeglądarkę, dane sesji muszą wygasnąć po określonym czasie, aby uniknąć zajęcia wszystkich zasobów serwera przez porzucone sesje. Podczas korzystania z danych sesji w związku z tym należy pamiętać o możliwości, że dane wygasną i zostaną utracone, zwłaszcza na stronach z długimi formularzami. Zostanie ona również utracona, jeśli użytkownik usunie swoje pliki cookie lub przełączy przeglądarki / urządzenia.

Niektóre frameworki internetowe / programiści używają ukrytych danych HTML do utrwalania danych z jednej strony formularza na drugą, aby uniknąć wygaśnięcia sesji.

LocalStorage, sessionStorage i pliki cookie podlegają zasadom "tego samego pochodzenia", co oznacza, że przeglądarki powinny uniemożliwić dostęp do dane z wyjątkiem domeny, która ustawia informacje na początek.

Aby dowiedzieć się więcej na temat technologii pamięci masowej klienta, zobacz zanurz się w Html 5.

 606
Author: pwdst,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-07 14:47:39
  1. LocalStorage

    Plusy :

    1. Pamięć internetowa może być postrzegana w uproszczeniu jako ulepszenie plików cookie, zapewniając znacznie większą pojemność pamięci. Jeśli spojrzysz na kod źródłowy Mozilli, zobaczymy, że 5120KB (5MB co równa się 2,5 miliona znaków w Chrome) jest domyślnym rozmiarem pamięci dla całej domeny. Daje to znacznie więcej miejsca do pracy niż typowy plik cookie 4KB.
    2. Dane są Nie wysyłane z powrotem do serwera dla każdego żądania HTTP (HTML, obrazy, JavaScript, CSS, itp.) - zmniejszenie ilości ruchu między Klientem a serwerem.
    3. Dane przechowywane w localStorage pozostają do momentu wyraźnego usunięcia. Wprowadzone zmiany są zapisywane i dostępne dla wszystkich obecnych i przyszłych wizyt na stronie.

    Wady :

    1. działa w oparciu o politykę tego samego pochodzenia . Tak więc przechowywane dane będą dostępne tylko na tym samym pochodzenie.
  2. Cookies

    Plusy:

      W porównaniu do innych, nie ma nic AFAIK.

Wady:

  1. limit 4K dotyczy całego pliku cookie, w tym nazwy, wartości, daty ważności itp. Aby obsługiwać większość przeglądarek, należy zachować nazwę poniżej 4000 bajtów, a ogólny rozmiar pliku cookie poniżej 4093 bajtów.
  2. Dane są wysyłane z powrotem do serwera dla każdego żądania HTTP (HTML, images, JavaScript, CSS, etc) - zwiększenie ilości ruchu pomiędzy Klientem a serwerem.

    Zazwyczaj dozwolone są:

    • 300 Pliki cookie w sumie
    • 4096 bajtów na ciasteczko
    • 20 ciasteczek na domenę
    • 81920 bajtów na domenę(podane 20 Ciasteczek o maksymalnym rozmiarze 4096 = 81920 bajtów.)
  • SessionStorage

    Plusy:

    1. jest podobny do localStorage.
    2. Dane nie są trwałe, tzn. dane są dostępne tylko dla jednego okna (lub karty w przeglądarkach takich jak Chrome i Firefox). Dane są dostępne tylko podczas sesji strony. Wprowadzone zmiany są zapisywane i dostępne dla bieżącej strony, a także przyszłych wizyt na stronie w tym samym oknie. Po zamknięciu okna magazyn jest usuwany.

    Wady:

    1. Dane są dostępne tylko w oknie / zakładce, w której zostały ustawione.
    2. Jak localStorage, TT działa w sprawie Polityki tego samego pochodzenia . Tak więc przechowywane dane będą dostępne tylko w tym samym miejscu pochodzenia.
  •  40
    Author: softvar,
    Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
    2018-04-19 12:13:54

    Są to Właściwości obiektu 'window' w JavaScript, podobnie jak document jest jedną z właściwości obiektu window, w którym znajdują się obiekty DOM.

    Właściwość Session storage utrzymuje oddzielny obszar pamięci dla każdego miejsca pochodzenia, który jest dostępny przez czas trwania sesji strony, tj. tak długo, jak długo przeglądarka jest otwarta, w tym przeładowuje i przywraca stronę.

    Local Storage robi to samo, ale utrzymuje się nawet wtedy, gdy przeglądarka jest zamknięta i ponownie otwarta.

    Możesz ustawić i pobieranie zapisanych danych w następujący sposób:

    sessionStorage.setItem('key', 'value');
    
    var data = sessionStorage.getItem('key');
    

    Podobnie dla localStorage.

     21
    Author: Prashant_M,
    Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
    2016-01-28 18:55:01

    OK, LocalStorage Jak to się nazywa, jest to magazyn lokalny dla Twoich przeglądarek, może zapisać do 10MB, SessionStorage robi to samo, ale jak sama nazwa mówi, jest oparty na sesji i zostanie usunięty po zamknięciu przeglądarki, może również zapisać mniej niż LocalStorage, jak do 5MB , ale Cookiessą bardzo małe dane przechowywane w przeglądarce, które mogą zapisać się do 4KB i mogą być dostępne za pośrednictwem serwera lub przeglądarki zarówno...

    Stworzyłem też obrazek poniżej, aby pokazać różnice na pierwszy rzut oka:

    LocalStorage, SessionStorage i Cookie

     18
    Author: Alireza,
    Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
    2018-07-10 01:23:27

    Web Storage API zapewnia mechanizmy, za pomocą których przeglądarki mogą bezpiecznie przechowywać pary klucz / wartość, w znacznie bardziej intuicyjny sposób niż korzystanie z plików cookie. API Web Storage API rozszerza obiekt Window o dwie nowe właściwości - Window.sessionStorage i Window.localStorage. - wywołanie jednego z nich spowoduje utworzenie instancji obiektu Storage, za pomocą której można ustawiać, pobierać i usuwać pozycje danych. Dla sessionStorage i localStorage dla każdego źródła używany jest inny obiekt pamięci (domena).

    Obiekty przechowywania są proste przechowuje wartość klucza, podobnie jak obiekty, ale pozostają nienaruszone przez ładowanie strony.

    localStorage.colorSetting = '#a4509b';
    localStorage['colorSetting'] = '#a4509b';
    localStorage.setItem('colorSetting', '#a4509b');
    

    klucze i wartości są zawsze ciągami znaków. Do przechowywania dowolnego typu convert it to String a potem ją przechowuj. Zawsze zaleca się stosowanie Storage interface metody.

    var testObject = { 'one': 1, 'two': 2, 'three': 3 };
    // Put the object into storage
    localStorage.setItem('testObject', JSON.stringify(testObject));
    // Retrieve the object from storage
    var retrievedObject = localStorage.getItem('testObject');
    console.log('Converting String to Object: ', JSON.parse(retrievedObject));
    

    Dwa mechanizmy w Web Storage są jak następuje:

    • sessionStorage utrzymuje oddzielny obszar przechowywania dla każdego danego pochodzeniaPolityka tego samego pochodzenia jest ona dostępna przez cały czas trwania sesji strony (dopóki przeglądarka jest otwarta, włącznie z przeładowaniem i przywróceniem strony).
    • localStorage robi to samo, ale utrzymuje się nawet po zamknięciu i ponownym otwarciu przeglądarki.

    Przechowywanie " Local storage zapisuje dane na dysk, podczas gdy session storage zapisuje dane tylko do pamięci. Wszelkie dane zapisane w pamięci masowej sesji są usuwane po zakończeniu pracy aplikacji.

    Maksymalna dostępna pamięć masowa jest różna dla każdej przeglądarki , ale większość przeglądarek wdrożyła co najmniej zalecany maksymalny limit pamięci w3c 5MB .

    +----------------+--------+---------+-----------+--------+
    |                | Chrome | Firefox | Safari    |  IE    |
    +----------------+--------+---------+-----------+--------+
    | LocalStorage   | 10MB   | 10MB    | 5MB       | 10MB   |
    +----------------+--------+---------+-----------+--------+
    | SessionStorage | 10MB   | 10MB    | Unlimited | 10MB   |
    +----------------+--------+---------+-----------+--------+
    

    Zawsze wyłapuj błędy bezpieczeństwa LocalStorage i przekroczenia kwot

    • QuotaExceededError : Gdy limity przechowywania przekroczą tę funkcję window.sessionStorage.setItem(key, value);, wyświetla wyjątek DOMException "QuotaExceededError", jeśli nie można ustawić nowej wartości. (Ustawienie może się nie udać, jeśli np. użytkownik wyłączył pamięć masową dla witryny lub jeśli limit został przekroczony.)

      DOMException.QUOTA_EXCEEDED_ERR jest 22 , przykład .

    • SecurityError : Uncaught SecurityError: Access to 'localStorage' is denied for this document.

      CHROME:-Privacy and security « Content settings « Cookies « Block third-party cookies.
      

    StorageEvent " Zdarzenie storage jest wywoływane na obiekcie okna dokumentu, gdy zmienia się obszar magazynu. Gdy agent użytkownika ma wysłać powiadomienie o pamięci masowej dla dokumentu, agent użytkownika musi ustawić w kolejce zadanie wywołania zdarzenia o nazwie storage w obiekcie okna obiektu dokumentu przy użyciu usługi StorageEvent.

    Uwaga: Aby uzyskać przykład z prawdziwego świata, zobacz Web Storage Demo. sprawdź kod źródłowy

    Nasłuchuj Zdarzenie magazynu w dom/Window, aby wychwycić zmiany w magazynie.


    Pliki cookie (plik cookie www, plik cookie przeglądarki) Pliki cookie to dane, przechowywane w małych plikach tekstowych jako pary nazwa-wartość, na komputerze użytkownika.

    JavaScript access using Document.cookie

    Nowe pliki cookie mogą być również tworzone za pomocą JavaScript przy użyciu dokumentu.własność cookie, a jeśli flaga HttpOnly nie jest ustawiona, istniejące pliki cookie mogą być dostępne z JavaScript jako cóż.

    document.cookie = "yummy_cookie=choco"; 
    document.cookie = "tasty_cookie=strawberry"; 
    console.log(document.cookie); 
    // logs "yummy_cookie=choco; tasty_cookie=strawberry"
    

    Bezpieczne i HttpOnly pliki cookie mechanizm zarządzania stanem HTTP

    Pliki cookie są często używane w aplikacjach internetowych do identyfikacji użytkownika i jego uwierzytelnionej sesji.]} Po otrzymaniu żądania HTTP serwer może wysłać nagłówek Set-Cookie z odpowiedzią. Plik cookie jest zazwyczaj przechowywany przez przeglądarkę, a następnie jest wysyłany z żądaniami do tego samego serwera w nagłówku HTTP pliku cookie.
    Set-Cookie: <cookie-name>=<cookie-value> 
    Set-Cookie: <cookie-name>=<cookie-value>; Expires=<date>
    

    Pliki cookie sesji zostaną usunięte po wyłączeniu klienta. Nie określają one dyrektyw Expires ani Max-Age.

    Set-Cookie: sessionid=38afes7a8; HttpOnly; Path=/
    

    Stałe pliki cookie wygasają w określonym dniu (Expires) lub po określonym czasie (Max-Age).

    Set-Cookie: id=a3fWa; Expires=Wed, 21 Oct 2015 07:28:00 GMT; Secure; HttpOnly
    

    nagłówek żądania HTTP Cookie zawiera zapisane pliki cookie HTTP wcześniej wysłane przez serwer z nagłówkiem Set-Cookie. HTTP-tylko pliki cookie nie są dostępne przez JavaScript poprzez dokument.właściwość cookie, interfejsy API XMLHttpRequest i Request w celu łagodzenia ataków na Skrypty cross-site (XSS).

    Pliki cookie są wykorzystywane głównie do trzech celów:

    • Serwer powinien zapamiętać loginy, koszyki zakupów, wyniki gier i wszystko inne, co serwer powinien zapamiętać.]}
    • [30]} Personalizacja " preferencje użytkownika, motywy i inne ustawienia
    • (Zapisywanie i analizowanie zachowań użytkowników) " Pliki cookie mają domeny z nimi związane. Jeśli ta domena jest taka sama jak domena strony, na której się znajdujesz, pliki cookie są uważane za własne pliki cookie. Jeśli domena jest inna, mówi się, że jest to plik cookie innej firmy. Podczas gdy własne pliki cookie są wysyłane tylko do ustawiającego je serwera, strona internetowa może zawierać obrazy lub inne komponenty przechowywane na serwerach w innych domenach (np. banery reklamowe). Pliki cookie wysyłane za pośrednictwem tych komponentów stron trzecich nazywane są Plikami cookie stron trzecich i są używane głównie do Reklama i śledzenie w Internecie.
    Pliki cookie zostały wymyślone, aby rozwiązać problem "jak zapamiętać informacje o użytkowniku":
    • gdy użytkownik odwiedza stronę internetową, jego nazwa może być przechowywana w pliku cookie.
    • następnym razem, gdy użytkownik odwiedza stronę, Pliki cookie należące do strony są dodawane do żądania. W ten sposób serwer otrzymuje niezbędne dane do "zapamiętania" informacji o użytkownikach.

    GitHubGist Przykład


    Jako podsumowanie,

    • localStorage utrzymuje się na różnych kartach lub oknach, a nawet jeśli zamkniemy przeglądarkę, zgodnie z polityką bezpieczeństwa domeny i wyborami użytkowników dotyczącymi limitu kwot.
    • obiekt sessionStorage nie jest utrzymywany, jeśli zamkniemy kartę (kontekst przeglądania na najwyższym poziomie), ponieważ nie istnieje, jeśli surfujemy przez inną kartę lub okno.
    • Web Storage (sesyjny, lokalny) pozwala nam zapisać dużą ilość par klucz / wartość i dużo tekstu, coś niemożliwego do zrobienia przez ciasteczko.
    • Pliki cookie, które są używane do wrażliwych działań, powinny mieć tylko krótki okres użytkowania.
    • Pliki cookie wykorzystywane głównie do reklam i śledzenia w Internecie. Zobacz na przykład rodzaje plików cookie używanych przez Google.
    • Pliki cookie są wysyłane przy każdym zapytaniu, dzięki czemu mogą pogorszyć wydajność (szczególnie w przypadku połączeń mobilnych danych). Nowoczesne interfejsy API dla pamięci klienckiej to Web storage API (localStorage i sessionStorage) oraz IndexedDB.
     2
    Author: Yash,
    Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
    2018-03-16 14:27:19

    Local storage: przechowuje dane o Użytkowniku bez daty wygaśnięcia te dane nie zostaną usunięte, gdy użytkownik zamknie okna przeglądarki, będą dostępne dla dnia, tygodnia, miesiąca i roku.

    W pamięci lokalnej może przechowywać 5-10MB danych offline.

    //Set the value in a local storage object
    localStorage.setItem('name', myName);
    
    //Get the value from storage object
    localStorage.getItem('name');
    
    //Delete the value from local storage object
    localStorage.removeItem(name);//Delete specifice obeject from local storege
    localStorage.clear();//Delete all from local storege
    

    Przechowywanie Sesji: jest to tak samo jak data przechowywania lokalnego, z tym że usunie wszystkie okna, gdy okna przeglądarki zostaną zamknięte przez użytkownika sieci.

    W pamięci sesji może przechowywać do 5 mb DANE

    //set the value to a object in session storege
    sessionStorage.myNameInSession = "Krishna";
    

    Session : sesja jest zmienną globalną przechowywaną na serwerze. Każdej sesji przypisany jest unikalny identyfikator, który jest używany do pobierania zapisanych wartości.

    Pliki cookie : Pliki cookie to dane, przechowywane w małych plikach tekstowych jako pary nazwa-wartość, na komputerze użytkownika. Po ustawieniu pliku cookie wszystkie żądania stron, które nastąpią, zwracają nazwę i wartość pliku cookie.

     2
    Author: Srikrushna Pal,
    Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
    2018-06-29 20:03:24

    HTML Web storage udostępnia dwa obiekty do przechowywania danych na kliencie:

    window.localStorage - stores data with no expiration date 
    window.sessionStorage - stores data for one session (data is lost when 
    the browser tab is closed)
    

    LocalStorage:

    Pamięć internetowa może być postrzegana w uproszczeniu jako ulepszenie plików cookie, zapewniając znacznie większą pojemność pamięci. Dostępny rozmiar to 5MB, co znacznie więcej miejsca do pracy niż typowe 4KB cookie.

    Dane nie są wysyłane z powrotem do serwera dla każdego żądania HTTP (HTML, images, JavaScript, CSS, itp.) - zmniejszając ilość ruchu pomiędzy klient i serwer.

    Dane przechowywane w localStorage pozostają do momentu wyraźnego usunięcia. Wprowadzone zmiany są zapisywane i dostępne dla wszystkich obecnych i przyszłych wizyt na stronie. Działa na zasadach tego samego pochodzenia. Tak więc przechowywane dane będą dostępne tylko w tym samym miejscu pochodzenia.

    Obiekt localStorage:

    Obiekt localStorage przechowuje dane bez daty wygaśnięcia. Dane nie zostaną usunięte po zamknięciu przeglądarki i będą dostępne następnego dnia, tygodnia lub roku.

    // Store
     localStorage.setItem("lastname", "Smith");
    
    // Retrieve
    
    localStorage.getItem("lastname");
    
    //Remove
    
    localStorage.removeItem("lastname");
    

    Pliki cookie:

    Możemy ustawić czas ważności dla każdego pliku cookie Limit 4K dotyczy całego pliku cookie, w tym nazwy, wartości, daty ważności itp. Aby obsługiwać większość przeglądarek, należy zachować nazwę poniżej 4000 bajtów, a ogólny rozmiar pliku cookie poniżej 4093 bajtów.

    Dane są wysyłane z powrotem do serwera dla każdego żądania HTTP ( HTML, images, JavaScript, CSS, itp.) - zwiększając ilość ruchu między Klientem a serwer.

    SessionStorage:

    Jest podobny do localStorage. Zmiany są dostępne tylko dla jednego okna (lub karty w przeglądarkach takich jak Chrome i Firefox). Wprowadzone zmiany są zapisywane i dostępne dla bieżącej strony, a także przyszłych wizyt na stronie w tym samym oknie. Po zamknięciu okna, magazyn jest usuwany

    Dane są dostępne tylko w oknie / zakładce, w której zostały ustawione.

    Dane nie są trwałe, tzn. zostaną utracone, gdy okno / karta zamknięte. Podobnie jak localStorage, działa na zasadach tego samego pochodzenia. Tak więc przechowywane dane będą dostępne tylko w tym samym miejscu pochodzenia.

     1
    Author: Neha Sinha,
    Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
    2018-08-13 07:11:24

    Local storage for all session, session storage for one session dane są wysyłane z powrotem do serwera dla każdego żądania HTTP. możesz również zapoznać się z tym artykułem o webstorage

     0
    Author: Pankaj Bisht,
    Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
    2018-05-22 09:22:35