0

是否可以进行操作(更具体地说是“ajax/heartbeat”)不更新会话的最后请求时间?

它用于获取通知等,因此它不应该更新会话超时,否则它们永远不会过期。

如果用户在页面上做事(onmousemove)我设置update=true其他update=false

4

1 回答 1

1

那么,你将不得不挂钩到 Symfony 的用户库。

lastRequest在 User lib 初始化期间更新(即:insidesfBasicSecurityUser)。

在您的app/[appname]/lib/myUser.class.php, 中扩展此initialize功能以不设置请求时间。像这样丑陋的东西:

public function initialize(sfEventDispatcher $dispatcher, sfStorage $storage, $options = array())
{
  $lastRequest = $this->getLastRequestTime();

  parent::initialize($dispatcher, $storage, $options);

  if (condition)
  {
    $this->lastRequest = $lastRequest;
  }
}

您唯一需要找到的是,如何从 myUser 库中捕获模块/操作,然后将其放入condition.

于 2012-12-05T12:14:29.417 回答