微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

测试付款时缺少 Stripe API 端点参数

如何解决测试付款时缺少 Stripe API 端点参数

我正在尝试在不使用第三方库或 npm 的情况下在 node js 中实现条带支付。所以,首先我想测试失眠的请求。

查看条带文档 here,如果我在控制台中粘贴相同的命令,我会得到一个成功对象。

现在转向失眠,我在请求标头中有以下内容

Authorization: Bearer my_api_key
Content-Type: application/x-www-form-urlencoded

然后是正文中的以下对象:

{
    "card[exp_month]":7,"card[exp_year]":2022,"card[cvc]":314
}

回复

{
  "error": {
    "code": "parameter_missing","doc_url": "https://stripe.com/docs/error-codes/parameter-missing","message": "You must supply either a card,customer,PII data,bank account,or account legal entity to create a token. If you're making this request with a library,be sure to pass all of the required parameters for creating a token. If you're making this request manually,be sure your POST parameters begin with the token type. For example,a PII token would require `pii[personal_id_number]`,while an account token would require a parameter beginning with `account[legal_entity]`. See the API reference for more information: https://stripe.com/docs/api#token_object","type": "invalid_request_error"
  }
}

1 - 我使用哪个端点、标题正文内容来创建令牌? 2 - 我如何进行实际付款。

注意:我从条带仪表板中获取了我的 test_api_key。

解决方法

这里需要考虑的几件事:

  1. 这最终取决于您,但我强烈建议您使用 stripe-node 库,而不是滚动您自己的库。该库基本上是底层 HTTP 请求的包装器,具有一些有用的功能,如自动重试、幂等键和强大的错误处理。您可以自己动手,但您将重新发明轮子,并且随着您的集成变得更加复杂,您将面临各种未处理的边缘情况和越来越多的问题。

  2. 您似乎正在尝试向 Stripe 发送原始卡详细信息。强烈建议不要这样做,因为它会将您置于最苛刻的 PCI compliance 括号中。这包括每年向 Stripe 发送 40 多页的文档,详细说明您如何实施安全性并证明您遵守 PCI 合规性安全标准。

  3. 您正在尝试使用令牌 API,该 API 已弃用用于卡片。相反,您应该使用 PaymentMethods API 进行新的集成。

如果您知道自己在做什么,但仍想沿着这条路走下去,问题在于您没有在请求中提供卡号。除了有效期和 CVC,卡号是 required

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?