stripe-payments - Stripe.applePay.checkAvailability 在移动版 Safari 中返回 false

标签 stripe-payments applepay

按照 stripe 文档,我正在尝试在网络上设置 Apple Pay。

但是 Stripe 提供的函数返回可用性为 false。

Stripe.applePay.checkAvailability(function(available) {
  if (available) {
    document.getElementById('apple-pay-button').style.display = 'block';
  } else {
    document.getElementById('apple-pay-button').style.display = 'none';
  }
});

我正在开发环境中进行测试,并在我的移动 safari 中使用 ngrok 连接到服务器。

有人有使用它的经验吗?

更新:

所以我最后一次尝试是

  • 使用带指纹识别器的 2016 macbook(因此我不需要进行切换)
  • 在 safari、ngrok、最新的 MacOS 中...
  • checkAvailability 被调用并且 available 返回 false
  • 唯一的问题是 stripe API,我们仍在使用旧 API,因为有重大更改,我们还没有尝试升级
  • 但是,我们已经成功地让 apple pay 与我们正在使用的 api 版本一起工作。

最佳答案

一些调试技巧可能会帮助开发人员登陆此处,尝试让 Apple Pay 和 Stripe 正常工作:

  • 确保设备的区域设置设置为支持 Apple Pay 的国家/地区(撰写本文时为美国、英国或加拿大)
  • 在开发过程中让浏览器开发工具控制台保持打开状态,因为第 3 方库有时会在其中记录指导性错误消息。查看并调试控制台中记录的所有错误。
  • 检查页面是否通过 HTTPS 提供(Apple Pay 要求)。考虑使用代理服务,例如 fwd/ngrok/etc。在您的开发环境中。
  • 确认 checkAvailability 功能正在运行。尝试将 alert('inside checkAvailability'); 调用作为回调函数的第一行。
  • 再次使用 alert(...) 确认 available 的值符合预期。
  • 在使用任何 Stripe.applePay 功能之前检查页面中是否包含 stripe.js
  • 检查是否为环境(测试或生产)正确设置了 Stripe API key
  • 更新到最新的 iOS 和/或 macOS 以确保 Safari 版本支持 Apple Pay。

关于stripe-payments - Stripe.applePay.checkAvailability 在移动版 Safari 中返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42683954/

相关文章:

ruby-on-rails - 一次性付款的 Stripe 优惠券/折扣

php - 检索 Stripe 使用的促销代码

ios - CSR 算法/大小不正确。预期 : RSA(2048) in Stripe for ApplePay

laravel - Stripe : Expire/Cancel subscription after n payments

ios - Apple Pay - 如何注册

reactjs - 如何将 React 和 Express 中重复出现的 Stripe 与自定义结账页面集成?

web - 从网页版 Apple Pay 开始

iOS 如何将用户直接带到钱包应用程序

php - 在哪里以及如何在 Authorize.Net 中使用 Apple Pay 支付处理证书

ios - 外部测试人员提交错误(Beta App Review)。 Apple Pay 的权利