Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.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
Javascript 仅在实际使用cookie时显示cookie通知_Javascript_Python_Django - Fatal编程技术网

Javascript 仅在实际使用cookie时显示cookie通知

Javascript 仅在实际使用cookie时显示cookie通知,javascript,python,django,Javascript,Python,Django,我发现这些需要遵守欧盟cookie法的cookie通知非常烦人。我正在处理的网页在大多数页面上都没有使用cookies(仅在某些页面上作为CSRF保护)。因此,我的想法是只在用户遇到实际包含cookie的页面时显示通知 我在启用了django.core.context\u处理器的基础模板中尝试了以下代码 {% if request.COOKIES %} <!-- Begin Cookie Consent plugin by Silktide - http://silktide.co

我发现这些需要遵守欧盟cookie法的cookie通知非常烦人。我正在处理的网页在大多数页面上都没有使用cookies(仅在某些页面上作为CSRF保护)。因此,我的想法是只在用户遇到实际包含cookie的页面时显示通知

我在启用了
django.core.context\u处理器的基础模板中尝试了以下代码

  {% if request.COOKIES %}
  <!-- Begin Cookie Consent plugin by Silktide - http://silktide.com/cookieconsent -->
  <script type="text/javascript">
  ...
  </script>
  <script type="text/javascript" src="//s3.amazonaws.com/cc.silktide.com/cookieconsent.latest.min.js"></script>
  <!-- End Cookie Consent plugin -->
  {% endif %}
{%if request.COOKIES%}
...
{%endif%}
这是一种工作,但它并没有在设置的页面上显示cookie。相反,它会在用户设置后进入的第一个页面上显示它(即,第一次请求对象包含cookie)


是否可以让它在实际设置cookie时显示cookie通知?

cookie实际上是通过响应对象而不是请求设置的。请求将只接收已在客户端浏览器中设置的cookie


此外,一些cookie是由
parse\u response
方法中的中间件类设置的。该方法是在处理视图后触发的,因此无法在模板中检索该方法。它将由会话和csrf mddleware在
parse_response
中分配。

不要忘记将Cookie同意src更新为
//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/1.0.9/cookieconsent.min.js

资料来源: