Javascript:帧之间的通信

时间:2010-10-28 23:15:55

标签: javascript security frames

我有两个不同的应用程序加载到不同的框架中。 我需要他们沟通 我知道javascript安全模型不允许从不同域加载的帧进行通信 但由于我控制两个应用程序,可能有一种方法允许从特定的另一个域加载的帧与该帧通信

如果不可能是什么黑客? 应用程序不同,我需要在不同的域(或至少不同的端口)加载它们 我无法将它们作为一个应用程序运行

1 个答案:

答案 0 :(得分:1)

如果他们共享顶级域名(例如foo.example.combar.example.com),那么您可以将document.domain = 'example.com';设置为relax same-origin restriction

如果您仅支持HTML5浏览器,则postMessage()完全支持跨域通信。

其他选项包括JSONP(跨域<script>标记的花哨名称)以及通过每个域上的服务器代理XmlHttpRequest