iframe中显示的嵌入式付款返回网址

TAT*_*TAT 5 paypal paypal-adaptive-payments

我正在尝试使用灯箱实现自适应支付作为嵌入式支付.

它可以正常工作,直到用户付款,但在用户完成由return urliframe加载的指定的付款页面之后.我期待它被加载到窗口而不是iframe中.以下是我的代码.我错过了什么吗?

环境
Java(播放框架)
PayPal_Platform_Java_SDK_N

预期的页面转移场景
PageA - ("用paypal支付"按钮点击)
→paypal对话框 - ("关闭"按钮点击)
→PageB

将pageA.html

<form action="https://www.sandbox.paypal.com/webapps/adaptivepayment/flow/pay" target="PPDGFrame">
  <dl>
    <dt></dt>
    <dd>
      <input id="type" type="hidden" name="expType" value="light">
      <input id="paykey" type="hidden" name="paykey" value="AP-KEY">
      <input type="submit" id="paypalSubmitBtn" value="Pay with paypal" />
    </dd>
  </dl>
</form>
<script type="text/javascript"> 
  var dgFlow;
  $(function(){
    dgFlow = new PAYPAL.apps.DGFlow({ trigger: 'paypalSubmitBtn' });
  }); 
</script>
Run Code Online (Sandbox Code Playgroud)

PageB.html

<p>Thank you for your payment!</p>

<script type="text/javascript">
  function handleEmbeddedFlow() {
    if (top && top.opener && top.opener.top) {
      top.opener.top.dgFlow.closeFlow();
    }
    else{
      top.dgFlow.closeFlow();
    }
    top.close();
  }

  jQuery.event.add(window, "load", function(){
    alert("window.load");
    handleEmbeddedFlow();
  });
</script>
Run Code Online (Sandbox Code Playgroud)

我也注意到 在PageB.html dgFlow中的其他情况下top.dgFlow.closeFlow();无法解决.

Sir*_*ire 2

您可以尝试检测页面是否在 iframe 中运行,如果是则直接重定向到该页面。

如何检测: 如何识别网页是在 iframe 内加载还是直接加载到浏览器窗口中?

如何重定向: 从 IFrame 重定向父页面