首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Dancer (Perl)中使用Dancer::Session::Cookie在空闲时销毁Cookie?

如何在Dancer (Perl)中使用Dancer::Session::Cookie在空闲时销毁Cookie?
EN

Stack Overflow用户
提问于 2014-09-23 04:30:52
回答 1查看 468关注 0票数 0

有没有一种内置的方法可以在Dancer::Session::Cookie空闲一段时间后销毁它生成的会话cookie?我注意到,当我重启Nginx或Starman服务器时,它甚至不会破坏会话,这不是我想要的(出于安全原因)。

如果没有内置的方法,那么在SQL数据库中存储上一次会话的活动时间并在每次操作后更新它是否存在固有的错误?然后,如果超过15分钟没有更新该条目,会话cookie将被销毁(使用session->destroy)。这似乎不是最好的解决方案,但也许这是唯一的方法。据我所知,您也可以在HTTP头中手动设置cookie过期时间,但这只会破坏客户端的cookie,对吗?

EN

回答 1

Stack Overflow用户

发布于 2014-09-23 10:46:30

我认为你想做相反的事情。

在生成cookie时,使用expires属性将其设置为"15分钟“:

https://metacpan.org/pod/Dancer::Cookie#expires

然后,每次对该会话执行某些操作时,调用Dancer::Cookie init方法:

https://metacpan.org/pod/Dancer::Cookie#init

..。刷新cookie (如果您没有使用默认路径,则传入路径)。

用户的浏览器应在给定时间后为您使cookie过期。

(我还没有实际尝试过,但是代码暗示它应该可以工作- init方法的文档当然可以更清楚)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25982657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档