2016-09-27 12 views
1

私はすべてのmysiteで共有されることを意図したクッキーを作成しています。Javascript setting cookies with path =/

これは、このようなクッキーを作成するコードです:

var setCookie = function(cname, cvalue, exdays) { 
    var d = new Date(); 
    d.setTime(d.getTime() + (exdays*24*60*60*1000)); 
    var expires = "expires="+d.toUTCString(); 
    var path ="path=/;"; 
    document.cookie = cname + "=" + cvalue + ";" + expires + ";" + path; 
}; 

それはかなりまっすぐ進むを見て、私はすべての私のサイトに沿って同じクッキーを作成したり、常に変更することを示すためにpath=/を使用しています。

問題は、URLごとに1つのCookieが作成されていることです。 Mozillaのプラグインで、私は、以下を参照してくださいすることができます

アクセスされている変数は唯一、多くの独立したものではありませんので、私の多くのバグを引き起こしている
Cookie Name   Value Path 
timer_is_enabled true /
timer_is_enabled false /foo 
timer_is_enabled true /foo/bar 

なぜこの現象が発生しているのですか?

+1

以前のテストで残っていないことを確認するには、すべて削除してからもう一度お試しください。 –

+0

あなたは正しいです。私はすべてのクッキーを正しく削除していませんでした。あなたの洞察に感謝します。 – Xar

+0

あなたはそれを整理してうれしいです。私は将来他人を助けるための適切な答えを作った。 –

答えて

1

あなたのコードは、少なくともパス属性については、動作するはずです。これらの他のクッキーは、以前のテストの残骸である可能性があります(悲しいことに、ブラウザは通常、このような情報を保持していないため、通常、特定のクッキーの作成日を追跡する方法はありません)。

現在のすべてのCookieをブラウザから削除してから、もう一度お試しください。

1

この機能は問題なく機能します。

setCookie('myCookieKey', 'myCookieValue', 10); 

そして、私は次しまっ:以下を実行した予想通り

enter image description here