メインコンテンツにスキップ

クラス: Cookies

クラス: Cookies

セッションのCookieの照会と変更。

プロセス: メイン
このクラスは'electron'モジュールからエクスポートされません。Electron APIの他のメソッドの戻り値としてのみ使用できます。

Cookiesクラスのインスタンスは、Sessioncookiesプロパティを使用してアクセスできます。

const { session } = require('electron')

// Query all cookies.
session.defaultSession.cookies.get({})
.then((cookies) => {
console.log(cookies)
}).catch((error) => {
console.log(error)
})

// Query all cookies associated with a specific url.
session.defaultSession.cookies.get({ url: 'https://www.github.com' })
.then((cookies) => {
console.log(cookies)
}).catch((error) => {
console.log(error)
})

// Set a cookie with the given cookie data;
// may overwrite equivalent cookies if they exist.
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 文字列 - 以下のいずれかの値を持つ変更の原因
    • explicit - cookieは利用者のアクションによって直接変更されました。
    • 上書き - クッキーは、それを上書きする挿入操作によって自動的に削除されました。
    • 期限切れ - クッキーは期限切れになったため自動的に削除されました。
    • 立ち退き - クッキーはガベージコレクション中に自動的に立ち退きさせられました。
    • 期限切れ上書き - クッキーはすでに期限切れの有効期限で上書きされました。
  • 削除 boolean - クッキーが削除された場合はtrue、それ以外の場合はfalse

クッキーが追加、編集、削除、または期限切れになったために変更されたときに送信されます。

インスタンスメソッド

次のメソッドはクッキーのインスタンスで使用できます

cookie.get(filter)

  • filterオブジェクト
    • url 文字列(オプション) - url に関連付けられているクッキーを取得します。空はすべての URL のクッキーを取得することを意味します。
    • name 文字列(オプション) - 名前でクッキーをフィルタリングします。
    • domain 文字列(オプション) - ドメインが ドメイン と一致するかそのサブドメインであるクッキーを取得します。
    • path 文字列(オプション) - パスが path と一致するクッキーを取得します。
    • セキュア boolean(オプション) - セキュアプロパティでクッキーをフィルタリングします。
    • セッション boolean(オプション) - セッションまたは永続的なクッキーを除外します。
    • httpOnly boolean(オプション) - httpOnly でクッキーをフィルタリングします。

Promise<Cookie[]> を返します - クッキーオブジェクトの配列を解決するプロミスです。

filter と一致するすべてのクッキーを取得するためのリクエストを送信し、レスポンスを使用してプロミスを解決します。

cookies.set(details)

  • 詳細オブジェクト
    • url 文字列 - クッキーを関連付ける URL。URL が無効な場合はプロミスは拒否されます。
    • name 文字列(オプション) - クッキーの名前。省略した場合、デフォルトで空になります。
    • value 文字列(オプション) - クッキーの値。省略した場合、デフォルトで空になります。
    • domain 文字列(オプション) - クッキーのドメイン。これは先頭のドットで正規化されサブドメインでも有効になります。省略した場合、デフォルトで空になります。
    • path 文字列(オプション) - クッキーのパス。省略した場合、デフォルトで空になります。
    • セキュア boolean(オプション) - クッキーにセキュアとしてマークを付けるかどうか。 Same Site=None 属性が使用されている場合を除き、デフォルトは false です。
    • httpOnly boolean(オプション) - クッキーに HTTP のみとしてマークを付けるかどうか。デフォルトは false です。
    • expirationDate Double(オプション) - UNIX エポックからの秒数としてのクッキーの有効期限。省略した場合、クッキーはセッションクッキーになり、セッション間では保持されません。
    • sameSite 文字列(オプション) - このクッキーに適用される Same Site ポリシー。unspecifiedno_restrictionlax または strict のいずれかになります。デフォルトは lax です。

Promise<void> を返します - クッキーが設定されると解決されるプロミス

詳細を使用してクッキーを設定します。

cookies.remove(url, name)

  • url 文字列 - クッキーに関連付けられている URL。
  • name文字列 - 削除するCookieの名称。

Promise<void>を返します - Cookieが削除されると解決されるPromise

urlおよびnameと一致するCookieを削除します。

cookies.flushStore()

Promise<void>を返します - Cookieストアがフラッシュされると解決されるPromise

記述されていないCookieデータをディスクに書き込みます。

メソッドで記述されたCookieは直ちにディスクに記述されませんが、30秒または512の操作ごとに記述されます。

このメソッドを呼び出すと、直ちにCookieがディスクに記述される場合があります。