【问题标题】:Flask : How to do server side cleanup on session expiration?Flask:如何在会话到期时进行服务器端清理?
【发布时间】:2013-01-17 11:11:30
【问题描述】:

在会话期间,我在服务器端分配和维护了一些对象。如何确保在会话过期后清除这些内容?

Flask 或某些 Flask 扩展是否支持此功能?

【问题讨论】:

  • 你是如何维护你的会话服务器端的?你在烧瓶中实现了 SessionInterface 吗?
  • @codegeek 我看不出 SessionInterface 在哪里/如何用于清理会话到期。除了执行一些检查过期会话的定期任务。我在问是否有更直接的工具,例如会话到期时的回调或其他什么。
  • 我没有说要使用 SessionInterface 来清理您要问的内容。我在问你是如何实现你的会话的。你在使用数据库,内存,memcache,redis吗?清理取决于清理的内容和位置。如果可能的话,我建议你发布一些示例代码。

标签: python session flask


【解决方案1】:

在我看来,您是在实例化对象,而不是将它们保存在任何地方,只是将它们保存在内存中。

如果这是真的,那么垃圾收集器将自动将它们带走:只需清除对它们的所有引用,如果你愿意,“忘记它们”。如果您自己无法访问它们,它们将被清理。

如果您想明确说明,请使用调度程序(可能是http://docs.python.org/2/library/sched.html)并在会话到期时创建一个定时任务。运行任务时,验证会话确实不再需要,并销毁您的对象。

【讨论】:

    猜你喜欢
    • 2019-05-19
    • 2013-08-27
    • 1970-01-01
    • 2019-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-05
    相关资源
    最近更新 更多