我正在构建一个 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/