当前位置:  开发笔记 > 后端 > 正文

当从另一个域重定向时,Django会话被丢弃

如何解决《当从另一个域重定向时,Django会话被丢弃》经验,为你挑选了1个好方法。

当用户访问我的域时,django会发出一个sessionid.当他试图用Facebook做Oauth时,他点击我网站上的一个按钮,重定向到Facebook.com.Facebook重定向回我的域,但此时,用户的会话丢失,Django似乎正在发布一个新的会话变量.

我希望已删除的会话持续存在,因为我必须将访问者与我的网站关联到他的Facebook帐户,但是当会话被删除时,登录的用户将被注销.

我怀疑这可能是与django的XSS保护有关的行为.当用户离开我们的网站登录Facebook时,如何使用户信息持续存在?



1> Jordan Reite..:

您可能想要确认cookie在创建时具有相同的域.这有时会导致问题.如果您要访问网站www.example.com并且OAuth回调指向example.com,那么您可能有两个单独的Cookie,一个用于www.example.com,另一个用于example.com

在浏览器上启用"始终询问",并注意cookie详细信息.确保"Host:"字段的值两次都相同.

修复程序在您的文件中输入类似.example.com的内容.SESSION_COOKIE_DOMAINsettings.py


这发生在我身上,因为我开始使用`localhost`,然后回到`127.0.0.1`.
推荐阅读
mobiledu2402851373
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有