如何在Javascript中获取cookie的域值?

时间:2010-06-02 15:10:45

标签: javascript cookies dns

使用Javascript我想获得特定cookie的domain值。

这可能吗?如果是这样,怎么样?

澄清一下:我不是在寻找cookie的。我在“subdomain.domain.com”上,我需要删除名称已知但其域值类似于“.domain.com”的cookie。简而言之:我想获得“.domain.com”的价值。

2 个答案:

答案 0 :(得分:39)

抱歉,您所得到的就是您在document.cookie中看到的内容。代码pathdomainexpires等Cookie元数据对于网站代码不可见(既不是JavaScript也不是服务器端)。

要读取被具有更具体的domainpath的Cookie所遮蔽的Cookie,您唯一能做的就是加载一个更具体的Cookie已用完的页面范围,并从那里阅读。

如果你说,只需要删除一个cookie,你可以做的就是尝试在每个可能的特异性水平上删除cookie,例如:

    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变量类似。你可以将它放在每个路径和域部分的嵌套循环中,在.分区为域,/为路径。

答案 1 :(得分:2)

您只能访问同一域中的Cookie(包括子域)。显然,做其他事情将是一个安全问题。