在 Cordova ios 4.0.0+ 中使用 Stripe Checkout

Using Stripe Checkout with Cordova ios 4.0.0+

我一直在尝试让 Stripe checkout 与 Cordova iOs 4.2.0 一起使用,但没有成功。最后一个 Cordova iOs 版本是 3.9.2。为了测试我制作了一个空的 hello world cordova 应用程序并为条纹添加了这段代码(在 ios 9 和 10 上测试):

<script
    src="https://checkout.stripe.com/checkout.js" class="stripe-button"
    data-key="xxxxxxx"
    data-amount="999"
    data-name="Oki Technologies Inc"
    data-description="Widget"
    data-locale="auto"
    data-currency="cad">

现在它在 Cordova ios 3.9.2 上完美运行,但在 4.0.0+ 上它只有一个带有深色覆盖层的空 iframe。我认为它试图在像移动网络这样的新选项卡中打开弹出窗口,而不是像在应用程序上应该做的那样打开弹出窗口。我希望有一个 useragent 或我可以欺骗的东西来让它工作,因为它在 android web/cordova 以及网络上的 iphone 上完美工作。有什么方法可以让它工作吗?

我在这里做了一个测试仓库,有人可以克隆来测试 https://github.com/HockeyCommunity/stripe

几天来我一直在用头撞墙寻找解决方案。解决方案是将以下两行添加到我的 config.xml 文件中:

<access origin="*" /> <allow-navigation href="https://*.stripe.com/*" />

希望对您有所帮助!

编辑:根据@TateThurston 的建议更新了解决方案