我尝试通过PayPal Ipn.php脚本建立通信(当"已完成"收到消息 - 该部分经过测试并且运行良好),以及包含提交按钮的Form的原始页面。我们的想法是点击提交按钮。
这2页使用相同的协议在同一个域上。
这是我在Ipn.php脚本上的脚本:
$click = "<script>
window.postMessage('Completed', 'http://www.example.com');
</script>";
echo $click;
echo "test"; // I receive it.
进一步测试后,接收部分可以工作,但发送部分(上面)没有。
以下是原始表单上的脚本,其中包含“提交”按钮:
$(window).load(function() {
window.addEventListener('message', receiver, false);
function receiver(e){
if (e.origin == 'http://www.example.com'){
if (e.data == 'Completed') {
alert(e.data);
e.source.postMessage('OK', e.origin);
$("#submit").click();
} else {
alert(e.data);
e.source.postMessage('FAIL', e.origin);
}
}
}
;})
到目前为止的结果:不起作用,发送部分不起作用(在测试接收部分之后)。
提前感谢您的帮助。