我为Facebook写了一个Greasemonkey/Tampermonkey脚本。我需要存储数据,以便稍后检索它。为此,我使用了localStorage
。
效果很好。但我注意到,几个小时后,我存储的所有数据都会自动删除。可能Facebook本身会删除所有localStorage数据。
我在寻找其他的选择。
我想将数据存储在客户端系统中。我有什么选择?我应该使用FileSystem来存储数据吗?
发布于 2013-04-03 10:20:37
因为你使用的是坦帕猴 (Chrome)和Greasemonkey (火狐)。继续使用GM_setValue()
。它不能被Facebook或任何其他网站清除。
它还具有跨域存储值的优点。
请注意,沼泽标准的GM_setValue()
在火狐上有些问题。它会导致一个脚本实例崩溃到无效的值上--所以最好使用序列化程序(如通用汽车 )来存储任何东西,而不是字符串。即使看起来是无辜的整数也会导致默认的GM_setValue()
崩溃。
目前,只有GM_setValue()
、cookies、localStorage和IndexedDB可用于两种浏览器上的持久数据。
IndexedDB也可能做您想做的事情,但是它没有GM_setValue()
那么容易使用。
更新:
现在,别忘了用:
// @grant GM_setValue
和// @grant GM_getValue
此外,如果您确实使用了GM_SuperValue库,那么现在可以将它添加到:
// @require http://userscripts-mirror.org/scripts/source/107941.user.js
在元数据块中。(因为userscripts.org早就死了。)
https://stackoverflow.com/questions/15730216
复制相似问题