从远程URL检索javascript cookie列表

时间:2012-08-15 09:59:09

标签: javascript cookies

如何从远程网址创建javascript Cookie列表(例如google analytics _utmz cookies)?

我可以通过获取http标头来获取http cookie。有没有办法在远程URL上执行'document.cookie'?

提前致谢!

2 个答案:

答案 0 :(得分:1)

您只能获取该网站所在域名的Cookie。

唯一的另一个选择是使用该域中的iframe,但仍需要您控制相关域,以便您对信息执行任何操作。

编辑:

如果您尝试从与网页相同的域中获取Cookie,请使用:

function getCookie(c_name)
{
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
{
  x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
  y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
  x=x.replace(/^\s+|\s+$/g,"");
  if (x==c_name)
    {
    return unescape(y);
    }
  }
}

getCookie(“analytics _utmz”);

(参见备受讨厌的W3Schools

的例子

答案 1 :(得分:1)

出于明显的安全原因,网站无法访问其他网站设置的Cookie。

e.g。 Alice访问Bob的网站并登录.Bob的网站在Alice的浏览器中设置了一个cookie,证明她已登录.Alice访问了Malory的网站。如果Malory可以读取Bob为Alice设置的cookie,那么Malory可以轻易地伪装成Alice并访问Alice存储在Bob网站上的所有数据。