最大年龄在Play Framework 2.2.0(Scala)中不起作用

Rav*_*avi 1 cookies session scala session-cookies playframework

我正在使用Scala的Play Framework 2.2.0.我想在修复时间之后使会话到期,所以我把这段代码放在conf/application.conf中

application.session.maxAge=1h
Run Code Online (Sandbox Code Playgroud)

但它不起作用.有没有办法在application.conf中设置会话的最大年龄,或者从控制器覆盖任何方法.如果我想在50秒后过期,我必须像这样编码

application.session.maxAge=50sec
Run Code Online (Sandbox Code Playgroud)

谢谢你的回复

Vid*_*dya 5

在Play Framework中,您无法自行设置超时.正如Play框架的Scala版本文档所述:

会话没有技术超时.它在用户关闭Web浏览器时到期.如果您需要特定应用程序的功能超时,只需将时间戳存储到用户会话中,然后根据您的应用程序需要使用它(例如,最长会话持续时间,最大不活动持续时间等).

因此,您必须简单地为每个代码编写代码,Action以检查当前时间和会话创建之间经过了多长时间.我建议使用过滤器.


Zan*_* XY 5

所选答案现已过时.您可以通过session.maxAge在application.conf中进行配置来查看最近的pull请求.

默认情况下,会话没有技术超时.它在用户关闭Web浏览器时到期.如果您需要特定应用程序的功能超时,只需将时间戳存储到用户会话中,然后根据您的应用程序需要使用它(例如,最长会话持续时间,最长不活动持续时间等).您还可以通过session.maxAge在application.conf中配置密钥(以毫秒为单位)来设置会话cookie的最大 期限.