How to get cookie's path using javascript
TL:DR; You cannot read through cookies based on path using javascript.
In JavaScript, you can only set or get cookies by using the internal object document.cookies
. And the content of this object will be a string of key value pairs of non-httpOnly cookie names and values separated by a ;
. And that is pretty much it.
There is no way you could get a trace of Path
, Domain
and other attributes of cookies
as they are only read by browsers and not shown to JavaScript.
On the other hand, If you are using any form of AJAX, You could try to intercept and parse the request headers by xhr.getResponseHeader("Set-Cookie")
and store the value in localStorage
or sessionStorage
as per your need. I still advise you that it is not a good idea. Some of the browsers might consider Set-Cookie
header as one of the forbidden headers to be read by javascript. but I think that restriction is only for httpOnly
cookies.
Comments
-
Karups almost 2 years
My set Cookie js function
function setCookie(name, value, expires, path){ cookieStr = name + "=" + escape(value) + "; "; if(expires){ expires = setExpiration(expires); cookieStr += "expires=" + expires + "; "; } if(path){ cookieStr += "path=" + path + "; "; } document.cookie = cookieStr; }
When I create a cookie,
setCookie('MyCookie','cookieName',3,'/Members')
How to get cookie's path?
-
S0AndS0 almost 5 yearsThings may have changed, there now be
browser.cookies.getAll()
which does provide thepath
among other things in a digestible object... however, getting access to this API (within compatible browsers) does require setting up amanifest.webmanifest
file. And the browsers that do support such fanciness do so in different ways, which then requires another dependency (shim)...localStorage
andsessionStorage
seem way easier.