有一个很酷的Firefox扩展,它允许您将所有Cookie导出到Netscape HTTP文件,cookies.txt,然后可以与wget (et.al)一起使用。
下面是一个用于cookies.txt站点的示例happycog.com文件:
# 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来实现它,而不是使用一个插件。
发布于 2011-09-01 08:55:02
抱歉,反应延迟了-不得不睡觉。我刚才一直在玩这个游戏,并得出结论,答案是NO。
原因是Javascript无法访问cookie的名称和值以外的其他信息,您无法检索路径、过期时间等。您到底想做什么?这是为一个特定的网站,你正在开发,或只是一般用途时浏览?
发布于 2016-01-15 17:30:40
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,您需要运行以下代码:
var cookieData = JSON.parse(/*Paste cookie data string from clipboard*/);
cookieData.forEach(function (arr) {
document.cookie = arr[0] + '=' + arr[1];
});发布于 2011-08-31 21:33:16
页面的所有cookie都存储在document.cookie中。
https://stackoverflow.com/questions/7263691
复制相似问题