Яка різниця між директивами кешування кеша: no-cache та no-store?
Директива no-cache у відповіді вказує на те, що відповідь не повинна використовуватися для подачі наступного запиту, тобто кеш не повинен відображати відповідь, у якій зазначена ця директива встановлена в заголовку, але повинен дозволяти серверу обслуговувати запит. Директива без кешу може включати деякі назви полів; у такому випадку відповідь може бути показана з кеша, за винятком вказаних імен полів, які слід подавати з сервера. Директива про недоторканність поширюється на все повідомлення і вказує, що кеш не повинен зберігати жодну частину відповіді або будь-який запит, який її запитував.
Я цілком безпечний з цими директивами?
Ні. Але, як правило, використовуйте як кеш-контроль: без кешу, ні-магазину, так і прагми: не-кеш-пам'ять, крім терміну дії: 0 (або достатньо задніх дат GMT, таких як епоха UNIX). Типи вмісту, що не є html, як pdf, текстові документи, таблиці Excel та ін., Часто отримують кешування, навіть коли встановлені вищезазначені директиви управління кешем (хоча це залежить від версії та додаткового використання must-revalidate, pre-check = 0, post-check = 0, max-age = 0, а на практиці s-maxage = 0 іноді може призвести до принаймні видалення файлу після закриття браузера в деяких випадках через хитрощі браузера та реалізацію HTTP). Також функція "Автозаповнення" дозволяє браузеру кешувати всі типи користувачів у полі введення форми. Щоб перевірити це, тег форми або окремі теги введення повинні містити атрибут "Автозаповнення =" Вимкнено ". Однак,
no-cache
не означає, що ви думаєте, що це робить. Насправді це означає "будь ласка, скасуйте".