Я пытаюсь использовать easyXDM для связи между родительским документом и дочерним iframe (загруженным из другого домена - amazon).Iframe src является oauth-подписанным URL и имеет следующий код для связи с родительским документом, который его загружает:
socket = new easyXDM.Socket({
remote: "http://localhost:56789/hitch.html", /* parent document */
remoteHelper: "http://localhost:56789/easyXDM/name.html",
onMessage: function(message, origin){
alert("Received '" + message + "' from '" + origin + "'");
},
onReady: function() {
socket.postMessage("Yay, it works!");
}
});
вышеуказанный код хранится в заголовочной части документа.
В parent (hitch.html):
var transport = new easyXDM.Socket(/** The configuration */{
local: "/easyXDM/name.html",
swf: "/easyXDM/easyxdm.swf",
onMessage: function(message, origin){
transport.postMessage("This is a message received from " + location);
}
});
Когда я загружаю дочерний iframe из amazonS3 внутри родительского документа, easyXDM создает еще один iframe внутри дочернего iframe с src, установленным в «http://localhost:56789/hitch.html?xdm_e=...".заставляет все это повторяться в цикле - родитель снова пытается загрузить дочерний iframe и т. д.
Я тестирую Firefox 9.0 с поддержкой postMessage. Реальные сообщения отправляются правильно иЯ вижу окна сообщений. Кроме этого, он также выдает ошибку "url is undefined or empty" в родительском документе при инициализации easyXDM.socket, но, похоже, не влияет ни на что другое ...
Спасибо,