W tym artykule porozmawiamy o tym, jak ustawić, sprawdzać i czytać wartość cookie z JavaScript. Jednak przed pójściem dalej pozwól mi podkreślić punkt, że pliki cookie nie powinny być używane do przechowywania krytycznych/poufnych informacji, takich jak hasła lub szczegóły karty kredytowej, ponieważ złośliwe osoby mogły do nich uzyskać dostęp.
Tworzenie pliku cookie
dokument.ciastko właściwość tworzy, czyta i usuwa pliki cookie, a jest to właściwość, która reprezentuje wszystkie pliki cookie związane z dokumentem. Aby najpierw utworzyć ciasteczka, powinniśmy wiedzieć, że pliki cookie są zapisywane na przykład w parach nazwy:
Nazwa użytkownika = Obama;Utwórzmy teraz plik cookie w JavaScript:
dokument.cookie = "nazwa użytkownika = Obama";Życie cookie jest ustawione na czas trwania bieżącej sesji przeglądarki, co oznacza, że wygasa, gdy użytkownik zamyka przeglądarkę. Aby rozwiązać ten problem, używamy MAX-AGE atrybut, który zapewnia, że plik cookie utrzymuje się poza bieżącą sesją przeglądarki. W atrybucie maksymalnego wieku możemy określić żywotność pliku cookie w sekundach i-e, jak długo pozostanie ciasteczka, zanim zostanie usunięty. Życie pliku cookie w poniższym kodzie wynosi 30 dni:
dokument.cookie = "nazwa użytkownika = Obama; max-age =" + 30*24*60*60;Możemy również użyć wygasać Atrybut, który zajmuje dokładną datę, a nie sekundy w formacie GMT/UTC i w tej dniu wygasa plik cookie:
dokument.cookie = "nazwa użytkownika = Obama; wygasa = czw, 26 września 2021 12:00:00 UTC";Kolejnym atrybutem, którego możemy użyć w tworzeniu pliku cookie, jest ścieżka atrybut, który mówi przeglądarce, do której ścieżki należy, a nie domyślną ścieżką, która jest bieżącą stroną.
dokument.cookie = "nazwa użytkownika = Obama; wygasa = czw, 26 września 2021 12:00:00 UTC; ścieżka =/";Musimy użyć JavaScript encodeuricomponent () ponieważ wartość plików cookie zawiera przecinki, półkolony i przestrzenie i encodeuricomponenet () Zapewnia, że ciąg nie zawiera przecinków, półkolonów i przestrzeni, ponieważ nie są one dozwolone w plikach cookie.
dokument.cookie = "nazwa użytkownika =" + encodeuricomponent („Obama”);Czytanie Cookie
Możemy odczytać lub uzyskać wszystkie pliki cookie obecnej domeny za pomocą dokument.ciastko:
var x = dokument.ciastko;Podobnie jak w tworzeniu pliku cookie, którego użyliśmy encodeuricomponent () Czytając ciasteczka, którego musimy użyć DecododeUricomponenet ():
dokument.cookie = "nazwa użytkownika =" + decododeuricomponent („Obama”);Usuwanie ciasteczka
Możemy również usunąć plik cookie, a w JavaScript proces jest bardzo prosty, ponieważ nie musimy określić pewnej wartości plików cookie, a raczej możemy użyć parametru Exire i zaktualizować go, używając na przykład wcześniejszej daty:
dokument.cookie = "nazwa użytkownika = Obama; wygasa = czw, 20 listopada 2018 12:00:00 UTC; ścieżka =/";
Usuwanie ciasteczka
Możemy również usunąć plik cookie, a w JavaScript proces jest bardzo prosty, ponieważ nie musimy określić pewnej wartości plików cookie, a raczej możemy użyć parametru Exire i zaktualizować go, używając na przykład wcześniejszej daty:
dokument.cookie = "nazwa użytkownika = Obama; wygasa = czw, 20 listopada 2018 12:00:00 UTC; ścieżka =/";Przykład cookie w JavaScript
Teraz, gdy wiemy, czym jest ciasteczka, jak tworzyć lub czytać ciasteczka, połączmy wszystko, czego się nauczyliśmy, i stwórz plik cookie, który przechowuje nazwę, gdy użytkownik odwiedza naszą stronę internetową. Przyjrzymy nazwę wejściową od użytkownika, gdy użytkownik weźmie udział w naszej stronie internetowej po raz pierwszy i będzie przechowywać ją w pliku cookie. Kiedy użytkownik ponownie wejdzie na stronę, otrzyma wiadomość powitalną na stronie internetowej.
Aby zaimplementować powyższy przykład, będziemy potrzebować 3 funkcji, w których jedna z funkcji ustawi plik cookie, odczytuje/otrzyma wartość pliku cookie, a ostatnia funkcja sprawdzi wartość pliku cookie.
Ustaw funkcję cookie
funkcja setCookie (nazwa użytkownika, wartość, wyginięcie)Uzyskaj funkcję cookie
funkcja getcookie (nazwa użytkownika)Aby uzyskać pojedyncze plik cookie, użyliśmy metody podzielonej, która rozbije nazwę = pary wartości, a następnie wyszukiwać żądaną nazwę.
Sprawdź funkcję cookie
funkcja checkCookie ()CHED COOTIE po prostu sprawdza, czy nazwa istnieje, czy nie, czy użytkownik po raz pierwszy odwiedził naszą witrynę, czy nie. Sprawdza, najpierw wywołując metodę getCookie (), która sprawdza, czy nazwa użytkownika istnieje, czy nie, a jeśli istnieje, wyświetla wiadomość powitalna z nazwą użytkownika. Jeśli nazwa użytkownika nie istnieje, wywołuje metodę setCookie (), a użytkownik wówczas wchodzi do nazwy, a plik cookie jest ustawiony.
Poniżej znajdują się zrzuty ekranu, kiedy po raz pierwszy odwiedziłem stronę:
Poniżej znajduje się zrzut ekranu pokazujący nazwę, którą ustawiłem po odświeżeniu strony:
Wniosek
Plik cookie to mały plik tekstowy składający się z niektórych informacji o użytkowniku i jest pakietem danych, który otrzymuje komputer, a następnie wysyła bez zmiany lub zmiany. Pliki cookie przeglądarki pomagają w śledzeniu wizyt użytkowników i działań użytkowników. Na przykład dodałeś niektóre elementy do koszyka i badasz witrynę i poszedłeś na inną stronę lub przypadkowo ją odświeżasz, bez ciasteczek twój koszyk stałby się pusty. Przyjrzeliśmy się, jak ustawić, sprawdzić i czytać pliki cookie w JavaScript z przykładami w tym poście.