我有一个程序,我在本地上下文中有一个页面,在这个页面中我有一个iframe,其内容在web上下文中。现在我想将一些数据从本地上下文发送到Web上下文。我该怎么做。
本地
var node = document.createElement("iframe");
node.src = 'ms-appx-web:///pages/mapView/mapView.html?latitude=' + coordinates.latitude + '&longitude=' + coordinates.longitude;
node.style.width = '100%';
node.style.height = '100%';
node.onload = function () {
node.contentWindow.postMessage(JSON.stringify(data), "ms-wwa-web://" +
document.location.host);
}
document.querySelector('#insert').appendChild(node);
我在iframe中的:
window.addEventListener('message', receiveMsg, false);
我有一个ajax调用,我得到了一些数据,但因为我无法访问web上下文中的ajax调用,我想将这里的一些数据发送到mapView.html。
问题是。我会通过Get Parameter发送一些值,但是我有太多的数据。
任何帮助?
答案 0 :(得分:0)
尝试切换此行:
node.contentWindow.postMessage(JSON.stringify(data), "ms-wwa-web://" +
document.location.host);
......对此:
node.contentWindow.postMessage(JSON.stringify(data), "*");
如果可以,你可以在Win 8应用程序中这样做(出于安全原因,不会在网络应用程序中这样做),但是如果你想要将其锁定更多,我认为你只需要将第二个参数更改为以下之一: