Firefox OS Inter App与postMessage的通信

时间:2014-01-22 07:49:23

标签: javascript html5 dom postmessage firefox-os

是否可以使用postMessage在Firefox OS中的两个打包应用程序之间进行通信,就像将消息从父级发布到Iframe时的方式:

var targetOrigin = document.location.protocol + '//' + document.location.host;
var otherWindow = document.getElementById("iframe").contentWindow;
otherWindow.postMessage("TestMessage", targetOrigin);

所以我的问题是:

  1. 如何获取对其他应用程序的窗口对象的引用(上面的其他窗口),或者是否可以以另一种方式执行postMessage以访问其他应用程序?
  2. 如何指定targetOrigin,app:// xxxx?

1 个答案:

答案 0 :(得分:1)

相同的源策略(http://en.wikipedia.org/wiki/Same-origin_policy)阻止您获取对窗口对象的引用,并将postMessage用于来自不同源的应用程序。每个打包的应用程序都有自己的来源。

正在开发一种新的API,以安全的方式进行所谓的应用程序间通信API(https://wiki.mozilla.org/WebAPI/Inter_App_Communication_Alt_proposal),但我认为目前仅适用于经过认证的应用程序它更稳定一点。