Как unsite сеанс при выходе из веб-сайта, но не при обновлении?
-
12-12-2019 - |
Вопрос
Мне нужно иметь мое веб-приложение Уничтожить / unset the zend_auth сеанс, когда пользователь покидает сайт: например, когда пользователь навигаций от MyApp.com, чтобы сказать Google.com, когда они возвращаются, сеанс больше не установлен?
Предпочтительно, чтобы разрешить обновление без заказа (но не существенно, поскольку первая часть должна применяться).
У кого-нибудь был опыт работы с этим раньше?
Решение
Создайте вызов AJAX перед разгрузкой страницы, которая очищает идентичность Zend Auth
<script language="JavaScript">
window.onbeforeunload = function(){
$.get('http://example.com/auth/clear');
}
</script>
.
Сервера:
public function clearAction(){
Zend_Auth::getInstance()->clearIdentity();
}
. Не связан с StackOverflow