4

我有一个实现 Facebook oauth 登录的 django 应用程序。

在将尚未通过身份验证的 AnonymousUser 发送到 Facebook 的 oauth2 之前,我在 request.session 中存储了一个令牌。

一旦用户通过 facebook 登录并被重定向回我们的站点,django 会话就会丢失。已生成新的会话密钥,旧的会话密钥已从 db 会话存储中删除,并且会话中没有数据(因此缺少原始会话令牌)。我无法弄清楚为什么会发生这种情况并且需要获取原始令牌?

我在 settings.py 中有以下内容

SESSION_ENGINE = 'django.contrib.sessions.backends.db'
SESSION_COOKIE_DOMAIN = '.mysite.com'
SESSION_COOKIE_SECURE = True
SESSION_EXPIRE_AT_BROWSER_CLOSE = False
4

1 回答 1

1

会话 cookie 必须设置为 false。如果是真的,您只能将会话 cookie 存储在 https 连接中,并且我假设您的测试环境不使用 https

于 2016-08-03T07:19:43.697 回答