具有不同域的选项卡之间的postMessage

时间:2019-04-21 17:02:05

标签: javascript google-chrome firefox cross-domain postmessage

我有一个标签页(域A),该标签页打开了另一个标签页(域B),标签页A应该能够与标签页B聊天。该标签页必须在Google Chrome和Mozilla Firefox中都可以使用。

我没有机会将Iframe用于标签B。

因此,我决定为此使用Date

1)标签A打开标签B。

2)当B准备就绪时,标签B向postMessagewindow.opener)发送一条消息。

3)标签A在window.opener.postMessage("ready", "*")侦听器中等待它,处理请求并发送响应消息。

4)标签B在message event侦听器中等待它,处理请求并发送响应消息。

这在Google Chrome浏览器中工作得很好,但是Mozilla Firefox给我错误message event

我花了几个小时寻找解决方案,但是找不到Mozilla Firefox的任何工作方法。显然,这是安全性,但是为什么它们在浏览器之间却有所不同。

问题:

1)如果进行一些更改,当前方法可以在Mozilla Firefox中使用吗?

2)还有其他方法可以在具有不同域的标签之间进行通信(iframe除外,因为我没有机会使用它)。

0 个答案:

没有答案