Firefox 66, 67 сохраняет 302 кеша - PullRequest
0 голосов
/ 16 июня 2019

Существует некоторая проблема с кэшированием 302 в Firefox 66 и 67:

Некоторая последовательность 302 приводит к тому, что Firefox использует ранее кэшированное местоположение из 302 вместо уже доступного URL-адреса, поэтому его не следует перенаправлять,Это происходит, даже если в заголовке для всех 302. "Cache-Control: no-cache, no-store, max-age = 0, must-revalidate" используется:

Вариант использования:

  1. Пользователь очищает кэш Firefox.
  2. Пользователь вводит URL-адрес ресурса (изображения PNG), возникающего на каждой странице.
  3. Система (с использованием защиты CAS Apereo + Spring) отправляет ответ с кодом состояния 302 иРасположение страницы входа в CAS.
  4. Пользователь вводит другой URL, например, домашнюю страницу.Это приводит к тому, что пользователь не перенаправляется на ресурс, необходимый на втором этапе.Без кеширования работает нормально в Firefox, когда этот шаг пропущен.
  5. Система отправляет ответ с кодом состояния 302 и местоположением страницы входа в CAS (как в 3-м шаге).
  6. Пользователь входит в систему.
  7. Система отправляет ответ с кодом состояния 302 и местоположением билета CAS.Затем перенаправляет на URL-адрес, необходимый на 4-м шаге, снова используя код состояния 302.
  8. Система не работает нормально.Firefox использует кэшированные файлы (в том числе из URL-адресов, требуемых на 2-м и 4-м шагах), хотя он не должен кэшироваться .Например, он вызывает перенаправление на домашнюю страницу (URL с 4-го шага) вместо отображения необходимой страницы (доступ из меню).

Другие браузеры и более ранние версии Firefox ведут себя нормально, и перенаправление не происходит.Firefox 66 и 67 работают нормально, когда очищается его кэш.

Снимки экрана консоли Firefox:

Сетевой журнал 3-го шага: enter image description here

5-я сетьжурнал: enter image description here

6-й сетевой журнал: enter image description here

7-й сетевой журнал: enter image description here

1 Ответ

0 голосов
/ 09 июля 2019

Кэширование 302 было дефектом в Firefox. Я сообщил о проблеме , и кеширование было исправлено.

...