4

我正在尝试强制重新加载 iframe 的内容(强制重新加载意味着不应使用浏览器缓存)。从解决方案Reload an iframe with jQuery here 中,我可以通过以下 javascript 代码执行此操作:

document.getElementById(FrameID).contentDocument.location.reload(true);

但是我遇到了同源策略错误。但是我确实在嵌入了 iframe 的页面和在 iframe 中加载的页面上都启用了 CORS。从 Web 开发工具中,我验证了在两个负载上,CORS 标头都存在:

Access-Control-Allow-Origin: *

虽然双方都在不同的域下,但我控制它们,并且可以发送 CORS 标头或任何其他标头(如果需要)。

这样做的正确方法是什么?

4

2 回答 2

2

虽然这个问题很老了,但它有很多观点,所以我将在这里为有同样问题的开发人员链接这个好技巧。

于 2021-06-29T09:54:25.797 回答
0

所描述的情况不需要 CORS。同源策略不允许跨不同域访问 DOM 属性和方法。您可以使用postMessage JavaScript API来启用 IFRAME 和父页面之间的通信。

于 2012-12-10T13:10:08.960 回答