我希望通过简单的方式实现PayPal Express Checkout进入我的Ionic / Cordova应用程序。
我已经创建了一个模板(paypal.html),它基本上只包含以下几行:
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" id="paypal-checkout-form">
<input type="hidden" name="cmd" value="_xclick" />
<input type="hidden" name="business" value="J4N...9PU" />
<input type="hidden" name="amount" value="1.99" id="paypal_amount" />
<input type="hidden" name="shipping" value="0.00" />
<input type="hidden" name="button_subtype" value="services" />
<input type="hidden" name="no_shipping" value="1" />
<input type="hidden" name="currency_code" value="EUR" />
<input type="hidden" name="lc" value="DE" />
<input type="hidden" name="bn" value="PP-BuyNowBF" />
<input type="hidden" name="return" value="http://www.example.com/some-page-to-return-to" />
</form>
在我的控制器中,我使用Ionic的inAppBrowser
打开此模板,并注入一个基本的javascript函数,提交paypal-checkout-form
,如下所示:
$rootScope.$on('$cordovaInAppBrowser:loadstop', function(e, event){
$cordovaInAppBrowser.executeScript({
code: 'var paypalFrm = document.getElementById("paypal-checkout-form"); paypalFrm.submit();'
});
});
我已经实现了这种方式,因为我不必处理来自PHP-Server或任何其他PayPal请求的get_token脚本。
我现在面临的问题是,不是好看的新PayPal界面显示(只是旧的灰色),并且视口被炸毁(显示完整的PayPal结账页面,而不是响应的页面)。
是否可以强制显示新界面?在我的计算机上(相同的代码),一切都按预期工作。
谢谢。