Różnica między Cookie a Session

Spisie treści:

Anonim

Co to jest plik cookie?

Plik cookie to mały plik o maksymalnym rozmiarze 4 KB, który serwer WWW przechowuje na komputerze klienta. Po ustawieniu pliku cookie wszystkie żądania stron, które następują po nim, zwracają nazwę i wartość pliku cookie. Plik cookie można odczytać tylko z domeny, z której został utworzony. Na przykład plik cookie ustawiony przy użyciu domeny www.guru99.com nie może zostać odczytany z domeny kariera.guru99.com. Większość witryn internetowych wyświetla elementy z innych dziedzin, np. Reklamy. Domeny obsługujące te elementy mogą również ustawiać własne pliki cookie. Są to pliki cookie stron trzecich. Plik cookie utworzony przez użytkownika może być widoczny tylko dla niego. Inni użytkownicy nie widzą jego wartości. Większość przeglądarek internetowych ma opcje wyłączania plików cookie, plików cookie stron trzecich lub obu.

Co to jest sesja?

Sesja to zmienna globalna przechowywana na serwerze. Każda sesja ma przypisany unikalny identyfikator, który jest używany do pobierania przechowywanych wartości. Za każdym razem, gdy tworzona jest sesja, plik cookie zawierający unikalny identyfikator sesji jest przechowywany na komputerze użytkownika i zwracany z każdym żądaniem do serwera. Jeśli przeglądarka klienta nie obsługuje plików cookie, unikalny identyfikator sesji jest wyświetlany w adresie URL. Sesje mogą przechowywać stosunkowo duże dane w porównaniu z plikami cookie.

Wartości sesji są automatycznie usuwane po zamknięciu przeglądarki. Jeśli chcesz przechowywać wartości na stałe, powinieneś przechowywać je w bazie danych.

Podobnie jak zmienna tablicowa $ _COOKIE, zmienne sesyjne są przechowywane w zmiennej tablicowej $ _SESSION. Podobnie jak w przypadku plików cookie, sesja musi zostać uruchomiona przed jakimikolwiek tagami HTML.

KLUCZOWA RÓŻNICA

  • Pliki cookie to pliki po stronie klienta zawierające informacje o użytkowniku, natomiast sesje to pliki po stronie serwera zawierające informacje o użytkowniku.
  • Cookie nie jest zależne od sesji, ale sesja jest zależna od Cookie.
  • Cookie wygasa w zależności od ustawionego dla niego czasu życia, natomiast Sesja kończy się, gdy użytkownik zamyka swoją przeglądarkę.
  • Maksymalny rozmiar pliku cookie to 4KB, podczas gdy w sesji możesz przechowywać dowolną ilość danych.
  • Cookie nie ma funkcji o nazwie unsetcookie (), podczas gdy w Session możesz użyć Session_destroy (); który służy do niszczenia wszystkich zarejestrowanych danych lub do usuwania niektórych

Dlaczego i kiedy używać plików cookie?

Http jest protokołem bezstanowym; pliki cookies pozwalają nam śledzić stan aplikacji za pomocą niewielkich plików przechowywanych na komputerze użytkownika. Ścieżka przechowywania plików cookies zależy od przeglądarki. Internet Explorer zwykle przechowuje je w folderze Temporal Internet Files. Personalizacja doświadczenia użytkownika - osiąga się to poprzez umożliwienie użytkownikom wyboru ich preferencji. Żądane strony, które następują, są personalizowane na podstawie preferencji ustawionych w plikach cookie. Śledzenie stron odwiedzanych przez użytkownika.

Dlaczego i kiedy używać sesji?

Aby bezpiecznie przechowywać ważne informacje, takie jak identyfikator użytkownika, na serwerze, gdzie złośliwi użytkownicy nie mogą się z nimi złościć. Sesje służą do przekazywania wartości z jednej strony na drugą.

Jest również używany, gdy chcesz, aby alternatywa dla plików cookie w przeglądarkach, które nie obsługują plików cookie, aby przechowywać zmienne globalne w wydajny i bezpieczniejszy sposób w porównaniu do przekazywania ich w adresie URL, rozwijając aplikację, taką jak koszyk, który ma tymczasowy przechowywać informacje o pojemności większej niż 4KB.

Cookie Vs. Sesja

Ciastko Sesja
  • Pliki cookie to pliki po stronie klienta, które zawierają informacje o użytkowniku
  • Sesje to pliki po stronie serwera, które zawierają informacje o użytkowniku
  • Plik cookie kończy się w zależności od ustawionego czasu życia
  • Sesja kończy się, gdy użytkownik zamyka swoją przeglądarkę
  • Nie musisz uruchamiać plików cookie, ponieważ są one przechowywane na komputerze lokalnym
  • W PHP, przed użyciem $ _SESSION, musisz napisać session_start (); To samo dotyczy innych języków
  • Oficjalny maksymalny rozmiar pliku cookie to 4KB
  • W ramach sesji możesz przechowywać dowolną ilość danych. Jedyne ograniczenia, jakie możesz osiągnąć, to maksymalna ilość pamięci, jaką skrypt może zużywać w tym samym czasie, która domyślnie wynosi 128 MB
  • Plik cookie nie jest zależny od sesji
  • Sesja jest zależna od Cookie
  • Nie ma funkcji o nazwie unsetcookie ()
  • Session_destroy (); służy do niszczenia wszystkich zarejestrowanych danych lub do usuwania niektórych