Обработка файлов cookie после отправки ответа на Plone 4.3

Мне нужно изменить данные, хранящиеся в файлах cookie, или установить новые файлы cookie, когда пользователь получает доступ к URL-адресу Plone.

Официальная документация Plone содержит именно то, что мне нужно, в разделе " Изменение HTTP-файлов cookie ответа ".

К сожалению, это кажется устаревшей документацией, так как для этого нужен пакет https://pypi.python.org/pypi/plone.postpublicationhook/, не поставляемый с Plone и необходимый только для Zope < 2.12; Документация гласит: " Этот пакет предназначен для обратной совместимости. Новый код должен напрямую использовать события публикации, представленные в Zope 2.12".

Поскольку я использую Plone 4.3/Zope 2.13, мне интересно, есть ли способ не включать этот устаревший пакет.

Я пытаюсь использовать ZPublisher.interfaces события без какого-либо успеха.

Я пытаюсь зарегистрироваться в ZCML следующим образом:

  <adapter
      factory=".mymodule.my_cookie_handler_function"
      provides="ZPublisher.interfaces.IPubSuccess"
      />

Но функция никогда не вызывается.

Некоторые примеры / коды, которые я нашел (но все еще не могу достичь своей цели):

1 ответ

Решение

Хотя я вижу код, который использует адаптеры, кажется, вы должны предоставить subscriber вместо.

Это сработало:

  <subscriber
      handler=".mymodule.my_cookie_handler_function"
      for="ZPublisher.interfaces.IPubSuccess"
      />

Не уверен если IPubSuccess это "правильный" интерфейс для использования.

Другие вопросы по тегам