How to get cookie's path using javascript

14,278

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.

Share:
14,278
Karups
Author by

Karups

I'm a web developer working on jQuery and javascript

Updated on July 22, 2022

Comments

  • Karups
    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
    S0AndS0 almost 5 years
    Things may have changed, there now be browser.cookies.getAll() which does provide the path among other things in a digestible object... however, getting access to this API (within compatible browsers) does require setting up a manifest.webmanifest file. And the browsers that do support such fanciness do so in different ways, which then requires another dependency (shim)... localStorage and sessionStorage seem way easier.