我们说我有一个属性为sandbox="allow-scripts"
的iframe。
我可能会或可能不会控制加载iframe的页面。 是否有可能阻止iframe发送postMessages而不是覆盖父类postMessage函数 - 如果父文件不是我的域,我可能无法做到。
答案 0 :(得分:0)
一位同事想出了一个主意。可以总结一下:创建域的父部分,以便覆盖其postMessage方法。
如果无法控制包含iframe的顶部窗口,为什么不将原始iframe放在另一个iframe中。附加的帧层可以充当防火墙。通过覆盖该中间防火墙iframe的postMessage-Method,可以确保原始iframe可以postMessage无论它想要什么,但是firewall-iframe只会转发需要发布的消息。
当然,这对于什么必须是postMessage调用的目标域有一些限制。