Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JQuery cookie extension will set a cookie with a path but will not read it

First, set a cookie:

jQuery.cookie('monster', 'big', { path : '/sesame/'});

Next, try to read it:

jQuery.cookie('monster');

Firefox tells me that the cookie has indeed been set. The value is big and the path is /sesame/. And yet when I tried to read the cookie it wouldn't work.

Alternate version of the question: How do I specify the path when reading a cookie?

As an experiment I used the following syntax but it sets a cookie rather than read one.

$.cookie('cookie_name', { path: '/path/' });
like image 896
Manoj Govindan Avatar asked Aug 20 '10 11:08

Manoj Govindan


2 Answers

JQuery cookie extension searches the document.cookie attribute to find a cookie and read its value. Document.cookie will only return the name, value pairs for cookies under the current document path. It does however allow you to set a cookie for a path different from the current document path.

Therefore this is not a limitation/bug in the jQuery cookie plugin; rather it is a byproduct of how cookies are handled in Javascript.

like image 124
Manoj Govindan Avatar answered Sep 28 '22 02:09

Manoj Govindan


Browser will not send cookie to the path its not set to!

Browser sends only cookie name and value. There is no way to find out cookie path or expiration time.

like image 45
Anpher Avatar answered Sep 28 '22 01:09

Anpher