web-dev-qa-db-ja.com

JavaScriptでCookieのドメイン値を取得する方法は?

JavaScriptを使用して、特定のCookieのdomain値を取得します。

これは可能ですか?もしそうなら、どのように?

明確にするために:Cookieのを探していません。 「subdomain.domain.com」にアクセスしており、名前はわかっているがそのドメイン値が「.domain.com」のようなCookieを削除する必要があります。つまり、「。domain.com」の値を取得したいのです。

35
Wabbitseason

申し訳ありませんが、取得できるのはdocument.cookiepathdomainexpiresなどのCookieメタデータは、サイトコードからは見えません(JavaScriptからもサーバー側からも見えません)。

より具体的なdomainまたはpathを持つCookieによってシャドウされているCookieを読み取るには、より具体的なCookieが出力されているページをロードするだけですスコープ、およびそこからそれを読みます。

あなたが言うように、あなたがremoveだけを必要とするなら、あなたができることは、具体性のあらゆる可能なレベルでクッキーを削除しようとすることです、例えば:

    document.cookie= 'foo=;domain=sub.domain.example.com;expires=Sat, 01-Jan-2000 00:00:00 GMT';
    document.cookie= 'foo=;domain=domain.example.com;expires=Sat, 01-Jan-2000 00:00:00 GMT';
    document.cookie= 'foo=;domain=example.com;expires=Sat, 01-Jan-2000 00:00:00 GMT';

path変数でも同様です。これをパスとドメイン部分ごとにネストされたループに入れて、.ドメインおよび/パス。

40
bobince

同じドメイン(サブドメインを含む)からのみCookieにアクセスできます。明らかにそうでなければ、セキュリティ上の問題になります。

2
Josh Stodola