我需要一种方法来存储用户脚本中的数据,以便其正在使用的网站无法访问该数据。我正在创建一个加密Facebook聊天的脚本,我需要在会话之间保留加密密钥。可以通过facebook的脚本访问cookie和本地存储。 GM_setValue不适用于opera。
答案 0 :(得分:1)
在这里找到答案:
Access root domain's localStorage from subdomain
http://www.opera.com/docs/userjs/specs/#scriptstorage
我将使用GM_setValue用于FF和scriptStorage用于Opera
答案 1 :(得分:0)
另一个选项,取决于脚本的用户,将提示用户将盐混合到您的加密过程中。
询问salt,然后在iframe中加载目标页面。 (当然,假设目标站点没有框架破坏者。)
首次访问该页面时,系统会提示您输入盐。之后,只需将其锁定在您的iframe中。
当然,该过程会使用户脚本变得更复杂。
大多数情况下,您必须设置一个本地doc
变量,该变量指向iframe的文档并将其用于所有调用。 doc.getElementById
代替document.getElementById
。如果您的脚本使用jQuery ... ouch。
我已经为iFrame和HTA完成了这个过程。