跨浏览器选项卡的Python会话范围

时间:2012-11-21 00:57:53

标签: python session web.py

我正在使用python web.py创建一个快速原型来测试一些东西。我注意到会话变量的范围使得同一浏览器上的2个标签(例如Chrome)共享会话。

有没有办法避免这种情况?它可以让我更有效地调试和测试。

为了提供一些上下文,我正在使用DiskStore进行会话:

session = web.session.Session(app, web.session.DiskStore('sessions')) 

感谢。

3 个答案:

答案 0 :(得分:1)

所有现代浏览器都以这种方式运行。它与将cookie发送到之前设置过cookie的网站有关。如果没有,弹出窗口和其他窗口将无法正常运行。

为了解决这个问题,我经常在Chrome中使用隐身和普通浏览功能。那里有分离,阻止人们看到对方的饼干。

此外,您可以使用单独的浏览器来完成此任务。

答案 1 :(得分:0)

我遇到了同样的问题。请参阅此问题:https://stackoverflow.com/questions/13187649/how-to-solve-webapp2-session-cookie-conflicts-between-browser-tabs

我通过创建自己的session-id(包括CSRF)并在表单中保存此session-id而不是cookie来解决它。 session-id指向我的db会话存储。

答案 2 :(得分:0)

非常酷的选项:

您还可以使用--user-data-dir =选项运行多个不同的Chrome副本。

- Dan D.