我试图尝试使用Paypal Lightbox有点不同。 我使用了一个按钮来触发ajax调用,然后生成PayKey,如果一切顺利,则触发表单(从文档中)创建并提交。
当我点击按钮时,会创建灯箱html,但内容未加载到其中。相反,我得到错误:
Load denied by X-Frame-Options: https://www.sandbox.paypal.com/us/cgi-bin/webscr?cmd=_dispatch-failed does not permit cross-origin framing.
我的代码:
<head>
<script src="https://www.paypalobjects.com/js/external/dg.js" type="text/javascript"></script>
</head>
外部脚本:
$("#checkout").click(function() {
var id = $(this).data("id");
if(id) { pay(id); }
});
function pay(id) {
$.ajax({
url : 'paypal/Pay-Chained.php',
type : 'POST',
data : "id="+id,
success : function (data) {
var info = (JSON.parse(data));
if (info['Type'] == 'Success') {
var output = info['URL'].substr(0, 64) + "expType=light&" + info['URL'].substr(64);
$("body").append('<form action="'+output+'" target="PPDGFrame" class="standard"><input type="submit" id="submitBtn"></form>');
$("#submitBtn").click();
} else {
alert("Error: Please try again or contact support.");
}
},
error : function () {
alert("Error: Please try again.");
}
});
}
在按钮页面的底部:
<script type="text/javascript" charset="utf-8">
var embeddedPPFlow = new PAYPAL.apps.DGFlow({trigger: 'checkout'});
</script>
我想也许它与订单执行有关但似乎无法弄明白。任何帮助都会很棒!
编辑:我刚刚创建了一个空白页面并完全从文档中复制了脚本。我仍然得到同样的错误。它可能与服务器设置有关吗?我正在运行一个地址为192.168.1.1/mysite/index.html的WampServer。