我怎样才能得到我的网站使用js设置的所有cookie。我不想说Cookie(“用户名”)但通过所有cookie循环并获得我的网站的密钥=值对得到我的网站的所有饼干
4
A
回答
2
var cookies = document.cookie.split(/;/);
for (var i = 0, len = cookies.length; i < len; i++) {
var cookie = cookies[i].split(/=/);
alert("key: " + cookie[0] + ", value: " + cookie[1]);
}
+0
[document.cookie()](https://developer.mozilla.org/en-US/docs/Web/API/document.cookie)尽可能地接近,但它不会检索所有的cookie该网站 - 它只是从当前*文档*中检索cookie。 – 2013-10-07 10:23:57
0
请阅读关于在JavaScript中阅读/写入Cookie的信息。
http://www.quirksmode.org/js/cookies.html
您可能正在寻找这样一个解决方案:Get all cookies with Javascript
下面的函数加载所有cookie的项目与cookie名称作为索引和cookie的值作为值的关联数组:
function get_cookies_array() {
var cookies = { };
if (document.cookie && document.cookie != '') {
var split = document.cookie.split(';');
for (var i = 0; i < split.length; i++) {
var name_value = split[i].split("=");
name_value[0] = name_value[0].replace(/^ /, '');
cookies[decodeURIComponent(name_value[0])] = decodeURIComponent(name_value[1]);
}
}
return cookies;
}
之后,你可以得到的饼干和他们写出来到像这样的文件:
var cookies = get_cookies_array();
for(var name in cookies) {
document.write(name + " : " + cookies[name] + "<br />");
}
2
您可以使用从my answer to Javascript getCookie functions的getCookie
并分成getCookies
和getCookie
功能,其中getCookies
函数返回cookies
,而不是cookies[name]
。而getCookie
函数只需返回值getCookies
并使用[name]
就可以了。
更新好的,我只需根据上述的说明添加的功能。 :)从
0
<html>
<head>
<script type="text/javascript">
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);
}
}
}
function setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
}
function checkCookie()
{
var username=getCookie("username");
if (username!=null && username!="")
{
alert("Welcome again " + username);
}
else
{
username=prompt("Please enter your name:","");
if (username!=null && username!="")
{
setCookie("username",username,365);
}
}
}
</script>
</head>
<body onload="checkCookie()">
</body>
</html>
相关问题
- 1. 使我的网站不离开饼干
- 2. UIWebview没有得到饼干
- 3. 网站不返回饼干
- 4. 用于网站到网站跟踪的饼干
- 5. DNN饼干在所有门户网站上都不安全
- 6. 电子得到httponly饼干
- 7. 饼干得到在asp.net
- 8. 什么是在我的asp.net网站多个饼干的影响
- 9. 如何自动在我的网站清理饼干
- 10. 多语种网站:PHP + MYSQL +饼干
- 11. Silverlight 4中,得到的HTML饼干
- 12. 我可以得到网站引用的所有程序集
- 13. 我怎么能得到Facebook的SEESION键和饼干的Facebook
- 14. 的Java得到的所有网页(网站地图),任何网站
- 15. 没有得到饼干在Android的PhoneGap的应用
- 16. 网站无法刷新,如果我插入大饼干
- 17. JQuery饼干饼干
- 18. 记得我饼干和清漆
- 19. 没有饼干
- 20. 硒饼干子站点
- 21. Phonegap重定向到网站,并为它设置饼干
- 22. 我的饼干在哪里?
- 23. 我的饼干在哪里?
- 24. 得到饼干龙卷风StaticFileHandler
- 25. 故障设置和Express.js得到饼干
- 26. C#解析饼干得到空
- 27. 没有CookieManager的Android饼干
- 28. 目的VS只有饼干
- 29. 饼干所需错误
- 30. 骨干没有得到我的JSON
您已经标记了这个PHP和JavaScript。你使用哪种语言?它们都没有内置函数,名为`getCookie`。 – Quentin 2011-02-07 09:58:31