我使用beakers WSGI SessionMiddleware
来管理浏览器和应用程序之间的会话。
我试图区分第一次访问会话的时间和任何进一步的请求。在
从文档来看,WSGI环境中有两个有用的值可用,
["beaker.session"].last_accessed
和{
但是,对于重复请求,["beaker.session"].last_accessed
总是返回None
,而{
每个请求执行一个["beaker.session"].save()
-我在会话中尝试了各种设置auto=True
的组合,并使用了.save() / .persist()
,但是没有乐趣:.last_accessed
总是{
我并不是使用会话来实际持久化任何数据,而是管理session.id
的创建和传递。(我使用的会话类型为“cookie”)
事实证明,这种行为可以归结为通过apache进行多处理。在
通过使用外部存储来管理第一次看到会话ID时的跟踪,以及维护自己的“上次访问时间”等方法解决了这个问题
相关问题 更多 >
编程相关推荐