首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript到“导出”所有的cookie?

Javascript到“导出”所有的cookie?
EN

Stack Overflow用户
提问于 2011-08-31 21:31:42
回答 3查看 7.3K关注 0票数 6

有一个很酷的Firefox扩展,它允许您将所有Cookie导出到Netscape HTTP文件,cookies.txt,然后可以与wget (et.al)一起使用。

下面是一个用于cookies.txt站点的示例happycog.com文件:

代码语言:javascript
复制
# Netscape HTTP Cookie File
# http://www.netscape.com/newsref/std/cookie_spec.html
# This is a generated file!  Do not edit.

cognition.happycog.com  FALSE   /   FALSE   1345696044  exp_last_visit  998800044
cognition.happycog.com  FALSE   /   FALSE   1345696044  exp_last_activity   1314160044

如何使用Javascript构建相同风格的“cookie导出”?当然,它只能读取当前域的cookie。那就太好了。

详细信息:

我意识到,不能用纯javascript将cookie导出到文件系统。我很乐意将它们导出到文本区域,或者使用document.write。我只想知道如何以相同的格式将它们复制并粘贴到cookies.txt文件中。但是,这里的挑战是使用javascript来实现它,而不是使用一个插件。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-09-01 08:55:02

抱歉,反应延迟了-不得不睡觉。我刚才一直在玩这个游戏,并得出结论,答案是NO

原因是Javascript无法访问cookie的名称和值以外的其他信息,您无法检索路径、过期时间等。您到底想做什么?这是为一个特定的网站,你正在开发,或只是一般用途时浏览?

票数 3
EN

Stack Overflow用户

发布于 2016-01-15 17:30:40

代码语言:javascript
复制
var cookieData = document.cookie.split(';').map(function(c) {
  var i = c.indexOf('=');
  return [c.substring(0, i), c.substring(i + 1)];
});

copy(JSON.stringify(JSON.stringify(cookieData)));

这将将您的cookie导出为一个键/值对数组(例如。[ key1,val1,key2,val2,]),然后将其复制到剪贴板上。它不会保留任何过期日期信息,因为这是不可能通过Javascript提取的。

要导入cookie,您需要运行以下代码:

代码语言:javascript
复制
var cookieData = JSON.parse(/*Paste cookie data string from clipboard*/);
cookieData.forEach(function (arr) {
  document.cookie = arr[0] + '=' + arr[1];
});
票数 9
EN

Stack Overflow用户

发布于 2011-08-31 21:33:16

页面的所有cookie都存储在document.cookie中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7263691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档