我正在使用带有 Beaker 的 python 瓶来管理 Http 会话。到目前为止,我知道如何设置烧杯会话超时参数,会话过期后会自动清理,但我需要在会话过期时进行额外的数据库清理。
有谁知道当烧杯会话过期时如何接收回调?非常感谢 :D
我对烧杯不熟悉,所以这只是一个疯狂的猜测,但你可以继承beaker.session.Session
吗?
如果是这样,那么您的新类可以在 __del__ 中进行清理。
这些方面的东西:
class MySession(beaker.session.Session):
def __init__(self, *args, **kwargs):
super(MySession, self).__init__(self, *args, **kwargs)
def __del__(self):
# your cleanup here
(或者也许这是您需要定义的expire
方法。不确定,因为我从未使用过烧杯。)