7.1 Nagłówek Keep-Alive
I jeszcze kilka przydatnych tytułów. Nagłówek Keep-Alive mówi serwerowi, aby utrzymywał otwarte połączenie: serwer nie zamknie połączenia natychmiast po wysłaniu odpowiedzi. Spowoduje to szybsze wykonanie kolejnego żądania od tego samego klienta do serwera.
Przykład takiego nagłówka:
Connection: Keep-Alive
Ale jeśli wszyscy klienci wymagają stałego połączenia, problemy zaczną się na serwerze. Serwer albo będzie niedostępny, albo sam zacznie zamykać połączenia.
7.2 Nagłówek kontroli pamięci podręcznej
Nagłówek Cache-Control może służyć do kontrolowania buforowania zawartości. Prawidłowo skonfigurowane buforowanie przyspiesza pracę z treścią, źle skonfigurowane buforowanie niespodziewanie stwarza problemy.
Aby wyłączyć buforowanie, musisz napisać następujący nagłówek:
Cache-Control: no-cache, no-store, must-revalidate
Nic nie powinno być przechowywane w pamięci podręcznej - ani z żądań klientów, ani z odpowiedzi serwera. Żądanie jest zawsze wysyłane do serwera, odpowiedź jest zawsze pobierana w całości.
Możesz także włączyć najbardziej prymitywny i niezawodny typ buforowania :
Cache-Control: no-cache
Przed wydaniem kopii pamięć podręczna wysyła zapytanie do serwera źródłowego, aby sprawdzić, czy zasób jest aktualny.
Czas buforowania zasobów można określić w sekundach . Nagłówek będzie wyglądał następująco:
Cache-Control: max-age=31536000
Ten nagłówek określa maksymalny czas buforowania zawartości.
Możesz przeczytać więcej o buforowaniu tutaj.
7.3 Pliki cookie
Serwer może przechowywać dane po stronie klienta . Takie dane nazywane są ciasteczkami . Jednak klient może również zapisać plik cookie. Są bardzo pomocni dla obu stron.
Na przykład wchodzisz na stronę i masz już na niej autoryzację. Oznacza to, że kiedy logowałeś się do niego ostatnim razem, serwer nakazał przeglądarce przechowywanie informacji o pomyślnym zalogowaniu się określonego użytkownika.
Oto jak wygląda plik cookie w żądaniu:
Cookie: name=value;name2=value2;nameN=valueN00
Pliki cookie są zwykle przechowywane przez przeglądarkę i są przypisane do określonej domeny . Gdy ponownie odwiedzasz tę samą domenę, pliki cookie są automatycznie dodawane do żądania http i odpowiedzi http. Serwer/domena nie może odbierać plików cookie zapisanych w przeglądarce przez inny serwer/domenę.
Każdy plik cookie ma 4 główne parametry:
- Nazwa;
- oznaczający;
- okres ważności (jak długo je przechowywać);
- domena, z którą jest powiązany plik cookie.
Pliki cookie są przechowywane i przesyłane w formie tekstowej, więc zarówno nazwa, jak i wartość są ciągami znaków. Jeżeli czas wygaśnięcia plików cookie nie jest określony, to są one niszczone po zamknięciu przeglądarki.
7.4 sesja
Po zalogowaniu się użytkownika do serwisu mówi się, że między serwisem a serwerem została nawiązana sesja.
Serwer sam w sobie tworzy specjalny obiekt - HttpSession,
w którym przechowuje wszystkie informacje niezbędne do pracy z autoryzowanym klientem. A unikalny numer tego obiektu jest przechowywany w przeglądarce w postaci Cookie.
Serwery internetowe Java zwykle używają nazwy JSESSIONID
do przechowywania identyfikatora sesji. Wygląda to mniej więcej tak:
Cookie: JSESSIONID =ABAD1D
Po stronie serwera możesz ustawić czas życia sesji, a także czy będzie ona automatycznie zamykana po zamknięciu przeglądarki.
GO TO FULL VERSION