Wszystkie pliki cookie są klientami i serwerami
Nie ma różnicy. Zwykły plik cookie można ustawić po stronie serwera lub klienta. „Klasyczny” plik cookie zostanie odesłany z każdym żądaniem. Plik cookie ustawiony przez serwer zostanie wysłany do klienta w odpowiedzi. Serwer wysyła plik cookie tylko wtedy, gdy jest wyraźnie ustawiony lub zmieniony, podczas gdy klient wysyła plik cookie przy każdym żądaniu.
Ale zasadniczo jest to ten sam plik cookie.
Ale zachowanie może się zmienić
Plik cookie to w zasadzie name=value
para, ale po wartości może znajdować się kilka atrybutów oddzielonych średnikiem, które wpływają na zachowanie pliku cookie, jeśli jest tak zaimplementowany przez klienta (lub serwer). Te atrybuty mogą dotyczyć czasu życia, kontekstu i różnych ustawień zabezpieczeń.
Tylko HTTP (nie dotyczy tylko serwera)
Jeden z tych atrybutów może być ustawiony przez serwer, aby wskazać, że jest to plik cookie wyłącznie HTTP. Oznacza to, że plik cookie jest nadal przesyłany tam iz powrotem, ale nie będzie dostępny w JavaScript. Zwróć jednak uwagę, że plik cookie nadal tam jest! To tylko wbudowana ochrona w przeglądarce, ale jeśli ktoś użyłby absurdalnie starej przeglądarki, takiej jak IE5, lub jakiegoś niestandardowego klienta, może faktycznie odczytać plik cookie!
Wygląda więc na to, że istnieją „pliki cookie serwera”, ale w rzeczywistości ich nie ma. Te pliki cookie są nadal wysyłane do klienta. Na kliencie nie ma sposobu, aby zapobiec wysyłaniu plików cookie na serwer.
Alternatywy dla osiągnięcia `` jedyności ''
Jeśli chcesz przechowywać wartość tylko na serwerze lub tylko na kliencie, potrzebujesz innego rodzaju magazynu, takiego jak plik lub baza danych na serwerze lub lokalny magazyn na kliencie.