小编JSG*_*eek的帖子

重定向弹出窗口并发布消息

我遇到了一个问题,我必须从弹出窗口重定向到不同的域并向其发布消息。这是场景:-

  1. 用户打开一个新的弹出窗口,该窗口保留在同一域中。(例如:http : //doamin_one.com
  2. 用户在弹出窗口中填写表单并单击提交。这应该将窗口重定向到http://doamin_two.com并且 domain_two.com 应该通过发布消息接收表单数据。

如果我打开新的弹出窗口并发布消息,我可以接收消息,但在重定向的情况下则无法接收消息。这是我的代码:

http://domain_one.com -

   function redirect(formData,popup) {
     //popup=window ref object
     popup.location.href="http://domain_two.com"
     popup.postMessage(JSON.stringify(formData),
          "http://domain_two.com");
}
Run Code Online (Sandbox Code Playgroud)

http://domain_two.com -

window.addEventListener("message", receiveMessage, false);
function receiveMessage(event)
{
 if (event.origin !== "http://domain_one.com")
      return;
 let data=event.data;
 //....
}
Run Code Online (Sandbox Code Playgroud)

javascript post postmessage window popup

6
推荐指数
1
解决办法
1340
查看次数

标签 统计

javascript ×1

popup ×1

post ×1

postmessage ×1

window ×1