Javascript 无法从Django中的另一个(父)域获取cookie
我需要删除以前在父域的子域浏览主机时为父域设置的cookie 例如,为example.com设置了一个cookie“xyz”,我正在尝试使用Django后端在subdomain.example.com上删除它 提供给视图的request.COOKIES不包含除subdomain.example.com中的COOKIES以外的任何COOKIES,因此我不能只编写响应。删除cookie(…)以删除它Javascript 无法从Django中的另一个(父)域获取cookie,javascript,python,django,cookies,Javascript,Python,Django,Cookies,我需要删除以前在父域的子域浏览主机时为父域设置的cookie 例如,为example.com设置了一个cookie“xyz”,我正在尝试使用Django后端在subdomain.example.com上删除它 提供给视图的request.COOKIES不包含除subdomain.example.com中的COOKIES以外的任何COOKIES,因此我不能只编写响应。删除cookie(…)以删除它 可以在Python或Javascript中执行这种删除?cookie可能是用“domain”参数设置
可以在Python或Javascript中执行这种删除?cookie可能是用“domain”参数设置的。将cookie设置为可从正在设置cookie的域的所有子域访问
我不是python高手,但我对http协议的了解表明,这可能就是问题所在。即使对于无法读取的cookie,也可以尝试调用
delete\u cookie
。Django将输出相关的Set Cookie
头以删除Cookie。当然,传递给delete\u cookie
的域和路径必须与要删除的cookie匹配
但是,如果您无法读取cookie,则可能存在另一个问题,这可能会阻止您删除它。您确定来自父域的cookie设置了domain=parentdomain.tld
参数吗?如果没有,则它将不会在子域中可见或可删除,除非在IE中,因为浏览器未正确处理任何域指定的cookie。>将cookie设置为可从正在设置cookie的域的所有子域访问。你到底是什么意思?是的,cookie是用domain=example.com设置的(如Firebug中所示)。问题是我几乎不可能影响cookie设置(代码是用PHP而不是Python编写的,除非通过管理器层次结构等,否则我无法访问其存储库),因此我正在尝试找到另一种解决方案。Firebug称,父域的cookie设置为domain=“.example.com”。我尝试过的第一件事是使用response删除cookie。删除_cookie('xyz',domain='.example.com')没有任何效果。这肯定会对example.com的子域产生影响,只要cookie上没有设置路径
,并且它不是仅限https的cookie。。。但是如果是这样的话,你也会在服务器端得到cookie。在首选项->隐私->显示cookie中选中它。