如何全局存储信息,以便多个TamperMonkey / GreaseMonkey脚本可以访问它并在多个域(跨域)之间共享?
在TamperMonkey或GreaseMonkey中没有关于此的文档。
我尝试使用GM_SuperValue
和GM_setValue/GM_getValue
脚本,但这些存储值的范围仅限于存储它的脚本here。因此,无法从脚本B重试从脚本A存储的值。
LocalStorage解决了问题,脚本A和B正在同一个域上使用。但是并没有解决跨域的问题。
有没有办法在多个脚本之间跨域使用共享内存?
评论后更新:
我有一个标志,我从脚本X中的域A获得。我需要在脚本Y中的域B中使用此标志。
答案 0 :(得分:1)
您可以使用<iframe>
元素和window.postMessage(
)在不同的域之间进行通信。其中postMessage()
的第二个参数是发送邮件的targetOrigin
。 targetOrigin
(如果不是"*"
)必须与目标protocol
的{{1}},port
和hostname
匹配。