paypal - ejemplos - URL de retorno de pago incrustado que se muestra en iframe
iframe video (1)
Puede tratar de detectar si la página se está ejecutando en un iframe y, si es así, redirigir directamente a la página.
Cómo detectar: ¿Cómo identificar si una página web se está cargando dentro de un iframe o directamente en la ventana del navegador?
Cómo redirigir: redirige la página padre de IFrame
Estoy tratando de implementar pagos adaptables como pago integrado con lightbox.
Funciona bien hasta que un usuario realiza un pago, pero una vez que el usuario completa la página de pago especificada por la return url
se carga dentro del iframe. Espero que se cargue en la ventana NO en el iframe. A continuación está el código que tengo. ¿Me estoy perdiendo de algo?
Ambiente
Java (marco de juego)
PayPal_Platform_Java_SDK_N
Escenario de transferencia de página esperado
Página A - (haga clic en el botón "pagar con PayPal")
→ diálogo de PayPal - (clic en el botón "cerrar")
→ 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>
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>
También noté que dgFlow
no se puede resolver en top.dgFlow.closeFlow();
en PageB.html.