Javascript 跨域本地存储和Chrome扩展问题

Javascript 跨域本地存储和Chrome扩展问题,javascript,iframe,google-chrome-extension,local-storage,postmessage,Javascript,Iframe,Google Chrome Extension,Local Storage,Postmessage,我已经为一个网站实现了一个跨域本地存储。我的iframe正在侦听来自父级的“消息”事件。但也有一些不受欢迎的访客:似乎Chrome/其他浏览器扩展一直在发送大量被我的iframe截获的消息 我试图过滤掉它们,但我宁愿实现一个更简单的解决方案。在我的iframe中提供了验证event.source的交叉解决方案,如下所示: window.addEventListener("message", receiveMessage, false); function receiveMe

我已经为一个网站实现了一个跨域本地存储。我的iframe正在侦听来自父级的“消息”事件。但也有一些不受欢迎的访客:似乎Chrome/其他浏览器扩展一直在发送大量被我的iframe截获的消息

我试图过滤掉它们,但我宁愿实现一个更简单的解决方案。在我的iframe中提供了验证event.source的交叉解决方案,如下所示:

window.addEventListener("message", receiveMessage, false);

function receiveMessage(event) {
    
   if (event.source !== window) return;
    
   //proceed
    
}
但我不确定这是否有效

当然,我也在验证event.origin,但这在本例中用处不大

我不能在本地测试我的解决方案,只能部署,所以我宁愿相信它能完成这项工作


这是解决这个问题的好方法吗?

这是AFAIK唯一基于DOM的解决方案,但您可以使用chrome扩展在框架的内容脚本和主页的内容脚本之间进行通信。