Czytałem kilka postów na temat „JWT vs Cookie”, ale tylko mnie wprawiły w zakłopotanie ...
Chcę wyjaśnienia , kiedy ludzie mówią o „uwierzytelnianiu opartym na tokenach a pliki cookie”, pliki cookie odnoszą się tutaj jedynie do plików cookie sesji ? Rozumiem, że plik cookie jest jak medium , może być używany do implementacji uwierzytelniania opartego na tokenach (przechowywać coś, co może identyfikować zalogowanego użytkownika po stronie klienta ) lub uwierzytelniania opartego na sesji (przechowywać stałą po stronie klienta pasujące do informacji o sesji po stronie serwera )
Dlaczego potrzebujemy tokena internetowego JSON ? Używałem standardowego pliku cookie do zaimplementowania uwierzytelniania opartego na tokenach ( nie używam identyfikatora sesji, nie używam pamięci serwera ani przechowywania plików )
Set-Cookie: user=innocent; preferred-color=azure
:, a jedyną różnicą, jaką zauważyłem, jest to, że JWT zawiera zarówno ładunek, jak i podpis ... podczas gdy możesz wybrać między plikiem cookie ze podpisem a zwykłym tekstem dla nagłówka http. Moim zdaniem podpisany plik cookie (cookie:'time=s%3A1464743488946.WvSJxbCspOG3aiGi4zCMMR9yBdvS%2B6Ob2f3OG6%2FYCJM'
) jest bardziej wydajny, jedyną wadą jest to, że klient nie może odczytać tokena, tylko serwer może ... ale myślę, że jest w porządku, ponieważ tak jak żądanie w JWT jest opcjonalne, nie jest konieczne, aby token mieć znaczenie