Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在django设置文件中添加samesite none选项_Django_Django Models_Django Rest Framework_Django Views_Django Templates - Fatal编程技术网

如何在django设置文件中添加samesite none选项

如何在django设置文件中添加samesite none选项,django,django-models,django-rest-framework,django-views,django-templates,Django,Django Models,Django Rest Framework,Django Views,Django Templates,我使用了Django 2.0.2版本。我试图在Django项目中处理google身份验证。我得到了令牌,但我将传递URL和令牌。它返回404错误。我需要在Django设置项目中添加samesite='none'。在哪里添加我不知道,我试图添加许多方法,但仍然抛出404错误。如何修复它 设置.py MIDDLEWARE = [ 'django_cookies_samesite.middleware.CookiesSameSite', 'django.middleware.secur

我使用了Django 2.0.2版本。我试图在Django项目中处理google身份验证。我得到了令牌,但我将传递URL和令牌。它返回404错误。我需要在Django设置项目中添加samesite='none'。在哪里添加我不知道,我试图添加许多方法,但仍然抛出404错误。如何修复它

设置.py

MIDDLEWARE = [
    'django_cookies_samesite.middleware.CookiesSameSite',
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
因此,我添加了samesite.middleware.CookiesSameSite中间件。但是我仍然面临这个警告与跨站点资源关联的cookie在设置时没有
SameSite
属性。它已被阻止,因为Chrome现在只提供带有跨站点请求的cookie,如果它们设置为
SameSite=None
Secure
。您可以在应用程序>存储>cookies下查看开发人员工具中的cookies,并查看更多详细信息
如何修复它

按照说明操作,然后设置

DCS_SESSION_COOKIE_SAMESITE = 'None' 
在中间件列表后面的
settings.py

此外,您还需要建立到dev服务器的ssl连接,或者使用一些过时的浏览器,该浏览器允许使用带有
None
属性和不带属性的SameSite cookie策略
secure
按照说明操作,并设置

DCS_SESSION_COOKIE_SAMESITE = 'None' 
在中间件列表后面的
settings.py


此外,您还需要与您的开发服务器建立ssl连接,或者使用一些过时的浏览器,这些浏览器允许使用带有
None
属性且没有属性
secure
的SameSite cookie策略,可能某些cookie仍然没有该属性。您可以在设置中尝试使用此标志:

SESSION_COOKIE_SAMESITE_FORCE_ALL = True

也许有些饼干还没有这个属性。您可以在设置中尝试使用此标志:

SESSION_COOKIE_SAMESITE_FORCE_ALL = True