【发布时间】:2012-01-26 12:42:48
【问题描述】:
我正在 Symfony2 中构建一个用户登录的 Ajax 应用程序,然后从那时起,一切都由 POST 请求处理。在config.yml 中将会话生命周期定义为 5 分钟后,我遇到了用户会话在 5 分钟后失效的问题,即使他们正在发出 POST 请求。每次发出请求时,我都想在会话无效之前重置倒计时,但我不确定如何有效地做到这一点。
我目前正在考虑的方法是为kernel.request事件编写一个监听器,检查请求方法是否为POST,并操作会话类。我还没有这样做,但这似乎不是一个干净的解决方案,因为每次发出请求时侦听器都需要触发。
这是我的会话配置:
session:
default_locale: %locale%
auto_start: true
lifetime: 300
有什么想法吗?解决方案是纯 PHP 而不是 Symfony?
【问题讨论】:
-
ajax 请求是否与最初设置会话 cookie 的域名和 symfony 应用程序相同?
-
请将您的 yml 会话配置添加到问题中。