Перейти к основному содержанию

Class: Cookies

Class: Cookies

Запрашивайте и изменяйте cookie.

Процесс: Main
Этот класс не экспортируется из модуля 'electron'. Он доступен только в качестве возвращаемого значения других методов в Electron API.

Экземпляры класса Cookies доступны через свойство cookies объекта Session.

Например:

const { session } = require('electron')

// Запрос всех cookies.
session.defaultSession.cookies.get({})
.then((cookies) => {
console.log(cookies)
}).catch((error) => {
console.log(error)
})

// Запрос всех cookies, связанных с определенным Url.
session.defaultSession.cookies.get({ url: 'https://www.github.com' })
.then((cookies) => {
console.log(cookies)
}).catch((error) => {
console.log(error)
})

// Установить cookie с данными объекта cookie;
// перезаписывает эквивалентные cookie, если такие есть.
const cookie = { url: 'https://www.github.com', name: 'dummy_name', value: 'dummy' }
session.defaultSession.cookies.set(cookie)
.then(() => {
// success
}, (error) => {
console.error(error)
})

События экземпляра

Для экземпляров Cookies доступны следующие события:

Событие: 'changed'

Возвращает:

  • Событие типа event
  • cookie Cookie - Cookie, который был изменен.
  • cause string - The cause of the change with one of the following values:
    • explic - Cookie был изменен непосредственно действием потребителя.
    • overwrite - Cookie был автоматически удален из-за операции вставки, которая перезаписала его.
    • expired - Cookie был автоматически удален по истечении срока его действия.
    • evicted - Cookie был автоматически исключен во время сбора мусора.
    • expired-overwrite - Cookie был перезаписан с уже истекшим сроком действия.
  • removed boolean - true если cookie был удален, в противном случае false.

Возникает при изменении cookie, так как она была добавлена, изменена, удалена или истекла.

Методы экземпляра

В экземпляре Cookies доступны следующие методы:

cookies.get(filter)

  • Объект filter
    • url string (optional) - Retrieves cookies which are associated with url. Empty implies retrieving cookies of all URLs.
    • name string (опционально) - Фильтрует cookies по имени.
    • domain string (опционально) - Изменяет cookies, чьи домены совпадают или являются поддоменами domains.
    • path string (опционально) - Извлекает cookies чей путь совпадает с path.
    • secure boolean (опционально) - Фильтрует cookies по их защищенному свойству.
    • session boolean (опционально) - Отфильтровывает сеансовые или постоянные файлы cookie.
    • httpOnly boolean (optional) - Filters cookies by httpOnly.

Возвращает Promise<Cookie[]> - промисы, которые разрешают массив Cookie объектов.

Отправляет запрос на получение всех cookies, соответствующих filter, и выдает promise с ответом.

cookies.set(details)

  • Объект details
    • url string - The URL to associate the cookie with. The promise will be rejected if the URL is invalid.
    • name string (optional) - The name of the cookie. Empty by default if omitted.
    • value string (optional) - The value of the cookie. Empty by default if omitted.
    • domain string (опционально) - домен cookie; это будет нормализовано с предыдущей точкой, чтобы он также был действителен для поддоменов. Empty by default if omitted.
    • path string (опционально) - Путь к cookie. Empty by default if omitted.
    • secure boolean (optional) - Whether the cookie should be marked as Secure. Defaults to false unless Same Site=None attribute is used.
    • httpOnly boolean (optional) - Whether the cookie should be marked as HTTP only. По умолчанию - false.
    • expirationDate Double (optional) - The expiration date of the cookie as the number of seconds since the UNIX epoch. If omitted then the cookie becomes a session cookie and will not be retained between sessions.
    • sameSite string (optional) - The Same Site policy to apply to this cookie. Может быть unspecified, no_restriction, lax или strict. По умолчанию - lax.

Возвращает Promise<void> - Promise, которое разрешается после установки файла cookie

Устанавливает cookie с details.

cookies.remove(url, name)

  • url string - URL-дарес, связанный с cookie.
  • name string - Название cookie для удаления.

Возвращает Promise<void> - Promise, которое разрешается после удаления файла cookie

Удаляет cookies, соответствующие url и name

cookies.flushStore()

Возвращает Promise<void> - Promise, которое разрешается, когда хранилище cookie было очищено

Записывает непрочитанные cookies на диск

Cookies written by any method will not be written to disk immediately, but will be written every 30 seconds or 512 operations

Calling this method can cause the cookie to be written to disk immediately.