Różnice między plikami cookie a sesjami?

Trenuję w rozwoju stron internetowych i uczę się o JSP & Servlets . Posiadam pewną wiedzę na temat HttpSession - wykorzystałem ją w kilku przykładowych projektach.

W przeglądarkach widziałem opcję "Usuń pliki cookie". Jeśli usunę pliki cookie, usunie również HttpSession.

Czy pliki cookie i sesja są takie same? Jakie są między nimi różnice?

Author: Rob Hruska, 0000-00-00

8 answers

Sesje są plikami po stronie serwera, które zawierają informacje o użytkowniku, podczas gdy pliki cookie są plikami po stronie klienta, które zawierają informacje o użytkowniku. Sesje mają unikalny identyfikator, który mapuje je do konkretnych użytkowników. Ten identyfikator można przekazać w adresie URL lub zapisać w pliku cookie sesji.

Większość nowoczesnych witryn stosuje drugie podejście, zapisując identyfikator w pliku Cookie zamiast przekazywać go w adresie URL (co stanowi zagrożenie dla bezpieczeństwa). Prawdopodobnie korzystasz z tego podejścia nie wiedząc o tym, a przez usuwanie plików cookie skutecznie usuwasz dopasowane sesje, usuwając unikalny identyfikator sesji zawarty w plikach cookie.

 169
Author: Eran Galperin,
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
2008-12-11 14:06:35

Plik cookie to po prostu krótki ciąg tekstowy, który jest wysyłany tam iz powrotem między Klientem a serwerem. Możesz zapisać name=bob; password=asdfas w pliku cookie i wysłać go tam iz powrotem, aby zidentyfikować klienta po stronie serwera. Możesz myśleć o tym jako o wymianie z kasjerem bankowym, który nie ma pamięci krótkotrwałej i potrzebuje Twojej identyfikacji dla każdej transakcji. Oczywiście używanie Plików cookie do przechowywania tego rodzaju informacji jest strasznie niebezpieczne. Cookies są również ograniczone w rozmiar.

Kiedy kasjer dowie się o swoim problemie z pamięcią, może zapisać Twoje informacje na kartce papieru i przydzielić ci krótki numer identyfikacyjny. Następnie, zamiast podawać numer konta i prawo jazdy dla każdej transakcji, możesz po prostu powiedzieć "jestem klientem 12"

Tłumaczenie tego na Serwery WWW: serwer zapisze odpowiednie informacje w obiekcie sesji i utworzy identyfikator sesji, który wyśle klientowi w pliku cookie. Kiedy klient odsyła plik cookie, serwer może po prostu wyszukać obiekt sesji używając identyfikatora. Tak więc, jeśli usuniesz plik cookie, sesja zostanie utracona.

Inną alternatywą jest użycie przez serwer przepisywania adresu URL do wymiany identyfikatora sesji.

Załóżmy, że masz link - www.myserver.com/myApp.jsp Możesz przejść przez stronę i przepisać każdy URL jako www.myserver.com/myApp.jsp?sessionID=asdf lub nawet www.myserver.com/asdf/myApp.jsp i wymienić identyfikator w ten sposób. Technika ta jest obsługiwana przez kontener aplikacji webowej i jest zwykle włączana przez ustawienie konfiguracji do korzystania z sesji cookieless.

 285
Author: Chris Cudmore,
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
2017-12-29 00:08:32

Pliki cookie i sesje przechowują informacje o użytkowniku (aby żądanie HTTP stało się aktualne), ale różnica polega na tym, że pliki cookie przechowują informacje po stronie klienta (przeglądarki), a sesje przechowują informacje po stronie serwera. Plik cookie jest ograniczony w tym sensie, że przechowuje informacje o ograniczonych użytkownikach i przechowuje tylko ograniczoną zawartość dla każdego użytkownika. Sesja nie jest limitowana w taki sposób.

 4
Author: sanjay singh,
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
2014-12-15 23:20:55

Plik Cookie jest w zasadzie globalną tablicą dostępną w przeglądarkach internetowych. Wiele razy używane do wysyłania / odbierania wartości. działa jako mechanizm przechowywania dostępu do wartości między formularzami. Pliki cookie mogą być wyłączone przez przeglądarkę, która dodaje ograniczenia do ich użycia w porównaniu do sesji.

Sesję można zdefiniować jako coś pomiędzy logowaniem a wylogowaniem. czas między zalogowaniem użytkownika a wylogowaniem jest sesją. Session przechowuje wartości tylko dla czasu sesji tj. przed zalogowaniem Wynocha. Sesje służą do śledzenia aktywności użytkownika, po zalogowaniu się.

 1
Author: RishikeshD,
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
2015-04-08 10:20:21

Google JSESSIONID . To wyjaśni, w jaki sposób API Servlet początkowo używa ponownego zapisu adresu URL, a następnie, jeśli pliki cookie są włączone, pliki cookie do zarządzania sesjami.

HTTP jest bezstanowy, więc przeglądarka klienta musi wysyłać id swojej sesji do serwera przy każdym żądaniu. Serwer, w dowolny sposób, wykorzystuje ten identyfikator do pobrania wszelkich danych dla tej sesji, udostępniając je na cały okres obowiązywania żądania.

 0
Author: Nick Holt,
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
2008-12-11 14:12:07

Sesja w Asp.net:

1.Utrzymuje dane w całej aplikacji.

2.Utrzymuje dane, jeśli bieżąca sesja jest żywa. Jeśli potrzebujemy danych dostępnych z wielu kontrolerów i widoków, sesja jest sposobem na przechowywanie i odzyskiwanie danych.

3.Sesje są plikami po stronie serwera, które zawierają informacje o użytkowniku. [Sesje są unikalnym identyfikatorem, który mapuje je do konkretnych użytkowników]

Tłumaczenie tego na Serwery WWW: serwer będzie przechowywał istotne informacje w obiekcie sesji i utworzyć identyfikator sesji, który zostanie wysłany do Klienta w pliku cookie. Gdy klient odsyła plik cookie, serwer może po prostu wyszukać obiekt sesji za pomocą identyfikatora. Tak więc, jeśli usuniesz plik cookie, sesja zostanie utracona.

 0
Author: Vicky,
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
2015-02-12 08:40:43

Plik Cookie jest sposobem realizacji sesji między Klientem a serwerem, w ten sposób informacje o sesji przechowywane w pliku cookie. Ale nie jest to jedyny sposób przechowywania informacji o sesji, innym sposobem jest przechowywanie informacji o sesji w adresie Url.

 0
Author: lessisawesome,
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
2015-07-03 01:51:01

Pliki cookie są przechowywane w przeglądarce jako plik tekstowy format.It jest przechowywana limit ilości data.It pozwala tylko 4kb[4096bytes] .Zmienna $_cookie not będzie przechowywać wiele plików cookie o tej samej nazwie

Możemy uzyskać dostęp do wartości plików cookie w easily.So jest to mniej bezpieczne .Funkcja setcookie () musi pojawić się przed

<html> 

Tag.

Sesje są przechowywane na serwerze side.It jest przechowywana w ilości data.It trzyma wiele zmiennych w sesjach. nie możemy uzyskać dostępu do wartości plików cookie w easily.So jest to bardziej bezpieczne .

Linki: difference-between-cookies-and-sessions

 0
Author: Elangovan,
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-02-02 06:14:09