CodeGym /Kursy Java /Moduł 3 /Nagłówki HTTP Część 2

Nagłówki HTTP Część 2

Moduł 3
Poziom 9 , Lekcja 6
Dostępny

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 JSESSIONIDdo 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.

Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION