我可以直接从前端发送Stripe收费请求吗?

时间:2019-11-09 13:14:53

标签: javascript stripe-payments

我想知道是否可以从前端直接发送Stripe请求,因为我没有后端。请注意,安全性不是问题,因为我不会部署项目,甚至不会以任何形式使用项目。

我正在考虑使用axios代替curl,它看起来应该像这样:

On the Stripe official doc, they use curl on the back-end

我还想知道是否还需要传递其他任何密钥。有一个秘密密钥和一个可发布密钥。我认为不需要发布密钥。另外,我需要激活我的帐户才能正常工作吗?我不打算在宠物项目之外使用它。

axios({
  method: 'post',
  url: 'https://api.stripe.com/v1/charges',
  header: {
    Authorization: 'sk_test_IvnLvlpEpskxJA8u7eEsAOBr00e7fmPyMZ'
  },
  data: {
    amount: '999',
    currency: 'cad',
    description: '',
    source: 'tok_visa'
  }
});

我希望卷曲请求将产生相同的结果。

1 个答案:

答案 0 :(得分:0)

您不应在客户端进行此调用,这显然是出于安全原因,而且还因为您必须提出原始请求并处理错误处理等。

相反,您应该使用Stripe的官方client libraries之一。它们在服务器端运行,但这并不意味着您需要单独的服务器。您可以只在计算机上本地运行代码,例如,通过构建与浏览器中的客户端代码交互的PHP脚本。

另一种替代方法是使用Checkout,因为有仅客户端集成,只需要一些JavaScript。请参阅文档here