【问题标题】:How to make stripe.createToken() work without using <CardElement /> from react-stripe-elements?如何在不使用 react-stripe-elements 中的 <CardElement /> 的情况下使 stripe.createToken() 工作?
【发布时间】:2019-04-21 04:11:05
【问题描述】:

我想我的问题有两个部分。我想要做的是我想使用带有自定义验证的 redux-form 并将数据传递给前端的条带化并获取令牌。

1) 如果我不想使用它的输入元素,我应该从条带中传递什么到 createToken()?

2) 有没有办法让 redux-form 与 react-stripe-elements 一起工作?

提前致谢:)

【问题讨论】:

    标签: reactjs redux redux-form stripe-payments


    【解决方案1】:

    根据设计,react-stripe-elements 要求您使用 Stripe 提供的输入组件,例如 CardElementCardElement 中信用卡号、到期日期等的解析和验证由库本身处理,并且应用程序的其余部分无法访问原始输入值本身(例如 { cardNumber: 1234567890 })。换句话说,例如,无法从 CardElement 访问 cardNumber 属性并将其插入到您的 redux 存储中。为了回答您的第一个问题,API 没有提供一种方法来明确地将您自己的信用卡道具(例如,cardNumber)传递给createToken

    Stripe 在其关于 Stripe Elements 的文档中声明了这一要求: https://stripe.com/docs/recipes/elements-react#create-token

    您可以利用我们预构建的 UI 组件 Stripe Elements 创建一个支付表单,该表单可以安全地收集您客户的卡信息而无需您处理敏感的卡数据。

    此外,请查看此问题以了解有关 Stripe 为何要求开发人员使用其预构建组件的更多详细信息:https://github.com/stripe/react-stripe-elements/issues/19

    引用@atty-stripe,react-stripe-elements 的开发者之一:

    为保持最简单的 PCI 合规性,Elements 在 iframe 中呈现表单输入,同时允许使用 Stripe.js v3 API 进行完全自定义。因此,我们强烈建议您使用 Stripe.js v3 和 Elements 来构建您的信用卡表单。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-10
      • 2020-09-16
      • 1970-01-01
      • 2020-08-17
      • 2021-11-30
      • 1970-01-01
      • 2023-02-09
      • 1970-01-01
      相关资源
      最近更新 更多