Junior
Jakie klucze są przesyłane z serwera do klienta?
sobes.tech AI
Odpowiedź od AI
Główne klucze przesyłane z serwera do klienta są używane w mechanizmach buforowania HTTP:
Cache-Control: Kontroluje zachowanie buforowania zarówno po stronie klienta, jak i proxy. Wskazuje, czy zasób może być buforowany, jego maksymalny czas życia (max-age), konieczność ponownej walidacji (no-cache), zakaz buforowania (no-store) i inne dyrektywy.Expires: Wskazuje dokładną datę i czas, po którym zasób buforowany jest uważany za nieaktualny. Jest przestarzały (deprecated) w porównaniu zCache-Control: max-age.ETag: Unikalny identyfikator wersji zasobu. Używany w nagłówkuIf-None-Matchprzy powtarzających się żądaniach do sprawdzania aktualności kopii w pamięci podręcznej. JeśliETagna serwerze zgadza się z przesłanym przez klienta, serwer zwraca status304 Not Modified.Last-Modified: Data i czas ostatniej modyfikacji zasobu. Używany w nagłówkuIf-Modified-Sincedo tego samego celu coETag. Jeśli zasób nie został zmieniony od podanej daty, serwer zwraca304 Not Modified.
Oprócz buforowania, mogą być przesyłane klucze związane z bezpieczeństwem i zarządzaniem sesjami:
Set-Cookie: Ustawia cookie po stronie klienta. Zawiera nazwę cookie, wartość, domenę, ścieżkę, okres ważności, flagi (HttpOnly,Secure,SameSite).Strict-Transport-Security(HSTS): Wskazuje przeglądarce, że dostęp do domeny powinien odbywać się tylko przez HTTPS przez określony czas.Public-Key-Pins(HPKP - przestarzałe): Wskazuje przeglądarce, które klucze publiczne powinny być powiązane z domeną. Używany do zapobiegania atakom mitm z użyciem sfałszowanych certyfikatów. Jest przestarzały i niezalecany.