javascript - chrome 内容脚本 : window. postMessage() "message"事件不包含 "source"属性

标签 javascript jquery google-chrome google-chrome-extension content-script

我正在构建一个 chrome 扩展,将内容脚本添加到站点(我们称它为主机)。内容脚本在主机中创建一个 iframe,它通向我的域(跨域)。

我可以通过 parent.postMessage() 从 iframe 向主机发送消息。但是,收到的“消息”事件不包含阻止我将消息传回给 child 的“来源”属性。

更新 我正在寻找客户端解决方案或对此行为的解释。

最佳答案

你将不得不以困难的方式去做。

在执行 iframe 时,在 url 中发送一个唯一的安装 id。

例如 http://www.trackingdomain.tld/trackingscript.php?uid=38736238

然后让您的脚本每 1000 毫秒从您的域中使用相同的 uid 提取一个 JSON 脚本回复,以获取返回的消息。

您也可以使用 json 发送消息。

但此解决方案意味着您将被迫使用服务器端脚本。

关于javascript - chrome 内容脚本 : window. postMessage() "message"事件不包含 "source"属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13401033/

相关文章:

javascript - Jquery:你能给我解释一下这行代码吗?帮助我理解它,或者提供我可以了解它的引用资料

FireFox 中的 JQuery Draggable 仅适用于 iFrame - 如何设置 ViewPort

css - 是否可以直接从浏览器禁用网站加载的字体?

javascript - Chrome 中的表单问题

javascript - 根据项目被调用的次数映射集合

javascript - 链接转换

javascript - 无法在不同的 div 中填充列表元素

javascript - Angular 中使用动态表头的表

javascript - 如何设置在javascript中的代码隐藏中创建的文本框的值

css - 浏览器加载不在 CSS 文件中的宽度/高度值