Chrome上未设置第三方cookie(Django应用程序)

Chrome上未设置第三方cookie(Django应用程序),django,google-chrome,cookies,session-cookies,samesite,Django,Google Chrome,Cookies,Session Cookies,Samesite,我在访问Chrome上的一些第三方cookie时遇到问题 Chrome版本是80.0.3987.100(官方版本)(64位),我想它已经将SameSite cookies的新实现设置为Lax 但是,在Django设置中,我添加了以下内容: SESSION_COOKIE_SECURE = True SESSION_COOKIE_SAMESITE = None CSRF_COOKIE_SAMESITE = None 没有运气 您可以看到上面的请求头中没有cookie 我已经尝试了请求,但在邮递

我在访问Chrome上的一些第三方cookie时遇到问题

Chrome版本是
80.0.3987.100(官方版本)(64位)
,我想它已经将SameSite cookies的新实现设置为Lax

但是,在Django设置中,我添加了以下内容:

SESSION_COOKIE_SECURE = True
SESSION_COOKIE_SAMESITE = None
CSRF_COOKIE_SAMESITE = None
没有运气

您可以看到上面的请求头中没有cookie

我已经尝试了请求,但在邮递员的Chrome上执行时遇到了问题。在通过
Cookie:sessionid:
之前,我会得到完全相同的结果。可能值得一提的是,这一切在Firefox上都没有问题(在Firefox中,我可以在请求头中正确地看到Cookie集)

如果有人有任何想法,我们将不胜感激。

好的,找到了解决方案

根据上的对话,我决定采取以下解决方法:

  • 创建
  • 在django.contrib.sessions.middleware之前添加中间件
  • 仍然保留这些设置
  • =>


    上面的PR已经合并到master中,将于2020年8月发布。在那之前,这是最好的解决办法。

    这是8月11日Django 2.2上的正确解决方案。对于Django 3.1,应该有以下引用:SESSION_COOKIE_SAMESITE='None'CSRF_COOKIE_SAMESITE='None'
    SESSION_COOKIE_SECURE = True
    SESSION_COOKIE_SAMESITE = None
    CSRF_COOKIE_SAMESITE = None