Ciasteczka w HTTP
Ciasteczka (cookies) reprezentują niewielki tekst, który serwer może zapisywać w przeglądarce użytkownika. Serwer może ustawić kilka ciasteczek o różnych nazwach.
Za pomocą ciasteczek serwer może identyfikować użytkownika i przechowywać dane każdego klienta pomiędzy jego żądaniami.
Ciasteczka są przesyłane między klientem a serwerem za pomocą nagłówków HTTP (zapamiętajcie, to ważne). Przy każdym żądaniu przeglądarki do serwera przeglądarka będzie wysyłać wszystkie ciasteczka danej strony na serwer.
Za pomocą nagłówka Cookie klient
wysyła ciasteczka na serwer przy każdym
żądaniu:
Cookie: name=john
Jeśli zostało ustawione więcej niż jedno ciasteczko, klient wyśle je wszystkie w jednym nagłówku, rozdzielając je średnikiem:
Cookie: name=john;surn:smit
Za pomocą nagłówka Set-Cookie serwer
może ustawić ciasteczko o żądanej nazwie
i wartości:
Set-Cookie: name=john
Czy to prawda, że ciasteczka są przesyłane przez nagłówki HTTP?
Gdzie są przechowywane ciasteczka, na serwerze czy w przeglądarce?
Jakim nagłówkiem serwer ustawia ciasteczka?
Jakim nagłówkiem przeglądarka wysyła ciasteczka na serwer?
Jak często przeglądarka wysyła ciasteczka na serwer?
Otwórz jakąś stronę i zbadaj nagłówki żądania i odpowiedzi. Poszukaj tam nagłówków przesyłających ciasteczka.
W narzędziach deweloperskich przeglądarki na zakładce "Network" znajdź swoje żądanie. Kliknij na nie. W pojawiających się szczegółach żądania znajdź zakładkę "Cookies". Zbadaj ją.
W narzędziach deweloperskich przeglądarki na zakładce "Application" znajdź zakładkę "Cookies". Zbadaj ciasteczka zapisane w Twojej przeglądarce dla danej strony. Spróbuj zmienić i usunąć pojedyncze ciasteczka (ostrożnie, można zepsuć autoryzację; upewnij się, że znasz hasło do tej strony).