Spec-Zone.ru › Web Extensions

cookies.onChanged

Событие onChanged API cookies срабатывает, когда устанавливается или удаляется cookie, к которому у расширения есть доступ.

Примечание: При активном разделении хранилища, cookies.Cookie.partitionKey содержит описание хранилища cookie. При изменении cookie важно передать это значение в cookies.set() или cookies.remove() для обеспечения работы расширения с правильным cookie.

Обратите внимание, что обновление свойств cookie реализовано в двухэтапном процессе:

  1. Сначала существующий cookie полностью удаляется, генерируя уведомление с cookies.OnChangedCause значением overwrite.
  2. Затем новый cookie записывается с обновлёнными значениями, генерируя второе уведомление с cookies.OnChangedCause значением explicit.

Синтаксис

browser.cookies.onChanged.addListener(listener)
browser.cookies.onChanged.removeListener(listener)
browser.cookies.onChanged.hasListener(listener)

Этот API также доступен как browser.cookies.onChanged.*.

События имеют три функции:

addListener(callback)

Добавляет обработчик к этому событию.

removeListener(listener)

Прекращает прослушивание этого события. Аргумент listener — это обработчик, который нужно удалить.

hasListener(listener)

Проверяет, зарегистрирован ли listener для этого события. Возвращает true если обработчик прослушивает, false в противном случае.

Синтаксис addListener

Параметры

callback

Функция обратного вызова, которая будет вызываться при возникновении этого события. Функции будут переданы следующие аргументы:

changeInfo

Объект object, содержащий детали произошедшего изменения. Его свойства следующие:

removed

Значение boolean, установленное в true если cookie был удалён, и false если нет.

cookie

Объект cookies.Cookie, содержащий информацию о cookie, который был установлен или удалён.

cause

Значение cookies.OnChangedCause, представляющее основную причину изменения cookie.

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
onChanged Да 79 45 ? Да Нет ? ? 48 ? Нет ?
partitionKey Нет Нет 94 ? Нет Нет ? ? 94 ? Нет ?

Примеры

В этом примере прослушиваются события onChanged и выводятся данные из аргумента changeInfo:

browser.cookies.onChanged.addListener((changeInfo) => {
  console.log(`Cookie changed: \n`
    + ` * Cookie: ${JSON.stringify(changeInfo.cookie)}\n`
    + ` * Cause: ${changeInfo.cause}\n`
    + ` * Removed: ${changeInfo.removed}`);
});

Примеры расширений

  • cookie-bg-picker

Примечание: Этот API основан на API chrome.cookies Chromium. Данная документация взята из cookies.json кода Chromium.

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/cookies/onChanged

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API