CookieStore.get()

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

CookieStore インターフェイスの get() メソッドは、与えられた名前またはオプションオブジェクトを持つ 1 つの Cookie を返します(下記参照)。このメソッドは渡されたパラメータに最初にマッチする Cookie を返します。

構文

var cookie = CookieStore.get(name);
var cookie = CookieStore.get(options);

引数

このメソッドは、以下のいずれかが必要です。

name

Cookie の名前が入っている USVString です。

オプション

オブジェクトは次のものを含みます。

name

Cookie の名前が入っている USVString です。

url

Cookie の URL が入っている USVString です。

Note: url オプションは、特定の URL をスコープとした Cookie の変更を可能にします。サービスワーカーは、自分のスコープ下にある任意の URL に送信される Cookie を取得できます。ドキュメントからは現在の URL の Cookie しか取得できないので、ドキュメントコンテキストで有効な URL はドキュメントの URL のみとなります。

返値

与えられた名前またはオプションに一致する最初の Cookie を含むオブジェクトに解決される Promise です。このオブジェクトは以下のプロパティを含んでいます。

name

Cookie の名前を含む USVString です。

value

Cookie の値を含む USVString です。

domain

Cookie のドメインを含む USVString です。

path

Cookie のパスを含む USVString です。

expires

Cookie の有効期限を含む DOMTimeStamp です。

secure

Cookie を安全なコンテキストでのみ使用するかどうかを示す boolean です。

sameSite

以下の SameSite のいずれかの値です。

"strict"

Cookie は、ファーストパーティのコンテキストでのみ送信され、サードパーティのウェブサイトによるリクエストと一緒に送信されることはありません

"lax"

Cookie は、通常のクロスサイト・サブクエスト(例えば、画像やフレームをサードパーティのサイトにロードするため)には送信されませんが、ユーザーが元のサイト内を移動しているとき(すなわち、リンクをたどっているとき)には送信されます。

"none"

Cookie は、すべてのコンテキストで送信されます。

Note: SameSite cookies の詳細については、 SameSite cookies explained をご覧ください。

例外

TypeError

与えられた nameoptions で表される Cookie の取得に失敗した場合にスローされます。

この例では、"cookie1" という名前の Cookie を返します。もし Cookie が見つかれば、プロミスの結果は 1 つの Cookie の詳細を含むオブジェクトになります。

let cookie = cookieStore.get('cookie1');
if (cookie) {
    console.log(cookie);
} else {
    console.log('Cookie not found');
}

仕様書

Specification
Cookie Store API
# dom-cookiestore-get

ブラウザーの互換性

BCD tables only load in the browser