gpt4 book ai didi

python - 如何在同一子域上获取不同的 Django 应用程序以共享 session cookie?

转载 作者:太空狗 更新时间:2023-10-29 21:15:19 24 4
gpt4 key购买 nike

我们在同一个子域上部署了几个 Django 应用程序。一些高级用户需要在这些应用程序之间跳转。我注意到每次它们在应用程序之间反弹时,它们的 session cookie 都会从 Django 接收一个新的 session ID。

除了在一个复杂的工作流程中,我很少使用 Django session 表。如果用户在此工作流中在应用程序之间跳转,他们将失去 session 并必须重新开始。

我仔细研究了 Django session 代码,发现:

django.conf.settings.SECRET_KEY

用于对每个请求的 session 执行完整性检查。如果完整性检查失败,则创建一个新 session 。意识到这一点后,我更改了每个应用程序中的 key 以使用相同的值,认为这将允许完整性检查通过并允许它们共享 Django session 。但是,它似乎没有用。

有没有办法做到这一点?我还缺少其他东西吗?

提前致谢

最佳答案

我建议您为这两个应用程序将 SESSION_COOKIE_NAME 设置为不同值。您的用户最初仍需要登录两次,但他们的 session 不会发生冲突 - 如果他们登录到应用 A,然后登录应用 B,然后返回到 A,他们仍将拥有他们的 A session 。

在 Django 实例之间共享 session 可能不是一个好主意。如果您想要某种单点登录,请查看类似 django-cas 的东西。您仍然会有 2 个 session (正如您应该的那样),但用户只会登录一次。

关于python - 如何在同一子域上获取不同的 Django 应用程序以共享 session cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/556907/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com