cookie не сохраняется в браузере до следующего запроса - PullRequest
0 голосов
/ 11 июля 2011

Я работал над системой входа в систему в php.Это работает довольно хорошо, но у меня есть 1 забавное поведение, от которого я не могу избавиться.В основном, если я выполняю много быстрых обновлений (нажимая f5 как сумасшедший), я выхожу из системы.

Это связано с тем, что система полагается на то, что сервер обновляет куки в браузере каждый раз, когда выдается запрос.У меня такое ощущение, что при очень быстром обновлении запрос N + 1 выдается до того, как cookie, возвращенный запросом N, будет сохранен в браузере.Это приводит к смещению информации в предоставленном файле cookie и информации, ожидаемой сервером.

На самом деле, если я регулярно нажимаю клавишу f5, скажем раз в секунду, состояние аутентификации сохраняется и все работает нормально.1005 *

Any1 когда-либо имел подобную проблему?Насколько вы знаете, процесс сохранения файлов cookie выполняется в другом потоке в браузере?Наверное, это объясняет мою проблему.

gracias hombres

1 Ответ

0 голосов
/ 11 июля 2011

Вероятно, это не проблема сохранения куки, а проблема отмены запроса.

  • браузер отправляет запрос на сервер
  • сервер обрабатывает запрос, готовит новый файл cookie, делает недействительным старый файл cookie
  • вы нажали F5
  • браузер отменяет запрос, выдает новый запрос со старым cookie
  • сервер отправляет ответ, включая новый coo -
  • сервер получает новый запрос со старым, недействительным cookie

И да, это происходит. Чтобы избежать этой проблемы, вы можете разрешить повторное использование последних двух файлов cookie, но для этого потребуется некоторое ручное жонглирование сессиями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...