CakePHP преждевременно выписывает меня - PullRequest
0 голосов
/ 09 июня 2011

У меня есть приложение CakePHP, которое, кажется, завершает мой сеанс одним конкретным действием.У меня есть страница, на которой при нажатии на ссылку запускается оверлей Fancybox типа iframe.В этом оверлее пользователь заполняет и отправляет форму.Форма отправлена ​​правильно, выполняет свою работу (включая отправку электронного письма), загружает представление об успешном завершении и позволяет мне закрыть оверлей, но как только я пытаюсь перейти на любую другую страницу, меня отправляют на экран входа в систему для повторной аутентификации.

Значение моего параметра конфигурации Security.level равно medium, а моего Session.timeout равно 120, поэтому проблем не должно быть.У кого-нибудь есть идеи, что могло бы создать это?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 12 июня 2011

Так что не было забавно выслеживать, но я был идиотом.В коде был скрыт некоторый код ранней стадии для обновления пользовательских данных в аутентифицированном сеансе, который не делал того, что должен был делать.Он пытался обновить весь объект Auth.User напрямую (например, $this->Session->write( 'Auth', $user )) вместо вызова метода login.

После того, как я изменил код Session::write() на $this->Auth->login( $user ), все выстроилось хорошо,Хороший справочный материал по этому вопросу на http://milesj.me/blog/read/31/Refreshing-The-Auths-Session.

0 голосов
/ 09 июня 2011

Возможно ли, что ваши ajax-вызовы и перенаправления не идут в одно и то же место, например, www.site.com и site.com? Я имел это прежде и также продолжал выходить из системы.

...