Jak można zidentyfikować, nie -cache nie oznacza, że nigdy nie jest buforowanie, ale raczej, że agent użytkownika musi zawsze pytać serwer, czy można użyć tego, co jest w pamięci podręcznej. Natomiast sklep "no-store" nie utrzymuje nawet kopii, co oznacza, że nie ma o co pytać. Jeśli znasz odpowiedź na pytanie "Czy mogę użyć tego ponownie?" zawsze jest nie, otrzymujesz zwiększenie wydajności przez (1) pomijanie narzutów z prośbą i (2) nie zrzucanie jakiegoś możliwego do ponownego wykorzystania zapisanego wyniku, aby zrobić miejsce dla nowego, nigdy nie powtórnie użytego wyniku.
Oprócz wydajności występuje różnica w zachowaniu z historią przeglądarki . Sekcja specyfikacji protokołu HTTP 1.1 13.13 mówi, że "czas wygaśnięcia nie dotyczy mechanizmów historii". Nagłówek braku pamięci podręcznej opisuje wygaśnięcie, więc nie ma zastosowania do mechanizmów historii, takich jak przycisk Wstecz. W ten sposób użytkownik może przejść wstecz do poprzedniej strony bez pamięci podręcznej bez kontaktu z serwerem.
Z drugiej strony nagłówek zakazu przechowywania danych uniemożliwia przechowywanie danych poza sesją, w takim przypadku po prostu nie jest dostępny dla mechanizmu historii. W przypadku braku sklepu, jeśli użytkownik kończy swoją sesję, przechodząc do innej domeny, a następnie wraca, jedynym sposobem, aby przeglądarka mogła się dowiedzieć, co wyświetlić, jest ponowne pobranie strony początkowej z serwera.
Oto jak Chromium issue na ten temat sprawia, że rozróżnienie:
no-cache nie oznacza "nie Cache" (co byłoby nie-store). no-cache oznacza, że nie używa się tego do normalnych obciążeń, chyba że zasób zostanie ponownie zatwierdzony ze względu na świeżość. Nawigacje historyczne nie są normalnymi ładunkami.
, a jeśli buforowana odpowiedź nie ma "Last-Modified" ani "ETag"? – vtortola
Myślę, że w tym przypadku odpowiedź nie zostanie w ogóle zapisana w pamięci podręcznej. –
Tak interpretuję RFC. (Dodano fragment) –