Django - django -cook ie - согласие не работает - PullRequest
1 голос
/ 20 января 2020

https://github.com/haricot/django-cookie-consent

https://django-cookie-consent.readthedocs.io/en/latest/index.html

Я обнаружил вилку github с согласием django -cook ie проект для управления файлами cookie на вашем веб-сайте, и я заставил его работать большую часть времени, но он не на 100% совершенен.

Вот как я его запустил (либо установить через pip с этой ссылки на форк, либо) :

Не использовать pip3 install django -cook ie -consent от PyPi по умолчанию. Загрузите zip-файл с github и скопируйте папку cookie_consent в папку пакетов вашего сайта. Например для меня это было - /home/user/.local/share/virtualenvs/project_name/lib/python3.7/site-packages/cookie_consent. Затем pip3 установите django -appconf. Затем следуйте инструкциям по документации.

Ссылки:

http://127.0.0.1: 8000 / cookie /

http://127.0.0.1: 8000 / cookie / принять /

http://127.0.0.1: 8000 / куки / принять / имя переменной /

http://127.0.0.1: 8000 / куки / отклонить /

http://127.0.0.1: 8000 / cookie / отклонение / имя переменной /

Я нашел код для баннера согласия https://github.com/haricot/django-cookie-consent/tree/master/tests/core/templates, но были проблемы с этим. Я скопировал код шаблона test_page. html в базу моего собственного проекта. html, но весь этот тег скрипта у меня не работал -> <script type="{% cc_receipts "social" %}" data-varname="social">. Я получил django .template.exceptions.TemplateSyntaxError: 'cc_receipts' не получил значения для аргумента (ов): 'request'. Копирование оставшейся части кода из этого файла без учета одного тега сценария привело к тому, что баннер появился в базе моего проекта. html файл.

Принятие повара ie от нажатия кнопки "Принять" на Код баннера, найденный в каталоге тестов, просто перенаправляет меня на пустую страницу / cookies / accept / social /. Это принятие также не регистрируется.

Принятие повара ie из / cookies / действительно регистрируется, но оно выдало мне эту ошибку:

TypeError: невозможно использовать строковый шаблон в байтах -подобный объект

[20 / Jan / 2020 16:00:43] "POST / cookies / accept / social / HTTP / 1.1" 500 121416

Метод не разрешен (GET): / куки / принять / социальные сети /

метод не разрешен: / куки / принять / социальные сети /

[20 / Jan / 2020 16:00:44] "GET / куки / принять / социальные сети / HTTP / 1.1 "405 0

Является ли эта ошибка возможной python3 проблемой несовместимости?

Как настроить, например, имя групповой переменной, называемое social, и cook ie с именем 1P_JAR (это пример recaptcha v3 cook ie на моем сайте).

Заметил, что имя пользователя не регистрируется или IP-адрес пользователя. Было бы неплохо включить их, как только они примут или отклонят.

Я не уверен, что этот форк автоматически блокирует куки, пока пользователь не примет. Кто-нибудь может это проверить? Если эта функция включена или не включена, как вы ее реализуете?

При принятии файлов cookie или отклонении файлов cookie в вашем браузере создается фактический повар ie с именем cookie_consent, который сообщает вам, какие файлы cookie приняты или отклонено.

Может кто-нибудь, пожалуйста, помогите мне заставить это работать? Кажется, это очень близко к соответствию GDPR.

1 Ответ

0 голосов
/ 26 марта 2020

Проверьте ваш журнал runserver. Вы должны настроить COOKIE_CONSENT_NAME. Поскольку для этого параметра нет значения по умолчанию.

Тогда вам нужно от go до django панели администратора и создать куки с их соответствующими именами и доменами, которые вы можете найти в инспекторе браузера.

...