Laravel 4.2在发送垃圾邮件时结束会话

时间:2015-12-12 18:31:46

标签: jquery ajax laravel session

我有一个聊天系统,可以通过ajax将用户的消息发布到处理数据的控制器。

出于测试目的,如果我按住返回(持续触发发布请求),我最终会点击401 Unauthorized。重新加载页面后,我可以看到我已经注销 - 从而让我意识到此操作由于某种原因已经清除了会话。

现在显然在制作中我不会让用户如此迅速地发出请求 - 但是,我仍然需要理解为什么会发生这种情况。

任何指导意见。

1 个答案:

答案 0 :(得分:0)

我怀疑这与https://github.com/laravel/framework/issues/5416#issuecomment-68395469

类似
  

因为会话读取不要尊重文件写锁定,所以调用Session ::的请求启动HAPPENS以在其他请求中的写入调用介于ftruncate和fwrite之间的时刻读取会话文件将收到NO DATA,从而假设NO会话存在并创建一个新会话,因此新令牌。因为这必须在那个确切的时刻发生,所以并不总是发生,并且当许多短请求同时发生时更有可能发生。

您可以尝试使用与默认file不同的会话驱动程序。