我正在使用CakePHP开发一个用于监控的应用程序,我不希望我的用户会话过期,因为即使他没有使用该应用程序,用户也需要经常查看控制面板。
我找到了很多方法,但我不知道哪个是最好的......
你推荐什么?
提前多多感谢。 最好的问候。
答案 0 :(得分:2)
转到config / core.php文件,设置像这样的会话设置
Configure::write('Session', array(
'defaults' => 'php',
'Session.timeout' => '12312312312231'
));
现在您可以根据需要更改会话超时。
如果你没有设置会话超时时间,那么你需要在一段时间内通过ajax请求访问你的登录后功能。你需要在1分钟的间隔内运行一个ajax请求到你登录后的任何控制器功能。像这样
在登录后控制器中创建一个函数ajax_request()
。现在
setInterval(function(){
//Your ajax code
},1000);
当ajax请求进入你的控制器功能时,auth组件总是延长到期时间。
答案 1 :(得分:-1)
$this->Session->destroy();
destroy
方法将删除存储在临时文件系统中的会话,cookie和所有会话数据。
要移除的用户,请使用更好的delete
。
$this->Session->delete('User');