Я пишу логику, чтобы перенаправить клиента на страницу входа после истечения его сеанса.Для этого я написал AJAX-вызов, который вызывает одну из пользовательских функций crontoller, где я проверил, активен ли пользовательский сеанс или нет, и в зависимости от этого я делаю редирект.Проблема, с которой я здесь сталкиваюсь, заключается в том, что вызов AJAX постоянно возвращает true, т. Е. Пользователь вошел в систему даже после истечения времени ожидания сеанса.Когда я обновляю сайт Magento, сеанс фактически действует как просроченный, а затем я получаю ответ AJAX как ложный.Есть что-то, чего мне не хватает ИЛИ есть лучший способ сделать это?
AJAX-вызов
jQuery(document).ready(function () {
LogOutInactive();
});
function LogOutInactive() {
var idleInterval = setInterval(timerIncrement, 5000);
}
function timerIncrement() {
jQuery.ajax({
url: '<?php echo Mage::getBaseUrl() ?>'+'customcontroller/index/checksession',
success: function(data){
if ( data == '0' ) {
window.location = "LOGIN_PAGE_URL";
}
}
});
}
Пользовательский контроллер
class Package_Extension_IndexController extends Mage_Core_Controller_Front_Action
{
public function checksessionAction()
{
$id = Mage::getSingleton('customer/session')->getId();
if($id)
{
echo $id;
}
else
{
echo '0';
}
}
}