2010-10-28 108 views
0

我有兩個不同的應用程序加載到不同的幀。 我需要他們溝通 我知道javascript安全模型不允許從不同域加載的幀通信 但由於我控制兩個應用程序,也許有一種方法可以允許從特定的另一個域加載的幀與此幀通信Javascript:幀之間的通信

如果不可能,這是什麼黑客? 應用程序是不同的,我需要在不同的域(或者至少不同的端口) 加載它們,我不能運行他們作爲一個應用

+0

請嘗試http://easyxdm.net/wp/我不知道它下面有什麼,但我想它不僅僅是一個簡單的postMessage ...還有另一個用於跨域消息傳遞的jquery插件,但我忘了它的名字。 – inf3rno 2013-10-03 23:27:17

回答

1

如果它們共享頂級域名(例如,foo.example.combar.example.com),那麼你就可以將document.domain = 'example.com';設置爲relax same-origin restriction

如果您只支持HTML5瀏覽器,那麼就有postMessage()準確用於跨域通信。

其他選項有JSONP(跨域<script>標籤的花式名稱)和XmlHttpRequest通過每個域上的服務器代理。

+0

謝謝你的聲音,像 – 2010-10-28 23:46:56

+0

postMessage是我最好的解決方案 – 2010-10-28 23:49:38