小编Sco*_*son的帖子

如何进行跨域postMessage?

postMessage的文档意味着可以进行跨域消息传递.然而:

// When the popup has fully loaded, if not blocked by a popup blocker
Run Code Online (Sandbox Code Playgroud)

这不是一个非常清楚的说明如何实际做到这一点.

想象一下两个网站:

  1. [家长]托管 qc-a.nfshost.com
  2. [儿童]主持 qc-b.quadhome.com

在父母:

document.addEventListener('message', function(e) {
  alert('Parent got (from ' + e.origin + '): ' + e.data);

  e.source.postMessage('Round-tripped!', 'http://qc-b.quadhome.com');
}, false);

function go() {
  var w = window.open('http://qc-b.quadhome.com', 'test');

  /* This doesn't work because same-origin policy prevents knowing when
     the opened window is ready. */

  w.postMessage('Vain attempt.', 'http://qc-b.quadhome.com');
}
Run Code Online (Sandbox Code Playgroud)

并且,在孩子:

document.addEventListener('message', function(e) {
  alert('Child got (from ' + …
Run Code Online (Sandbox Code Playgroud)

javascript html5 postmessage cross-domain

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

cross-domain ×1

html5 ×1

javascript ×1

postmessage ×1