flutter package flutter_stripe 是否需要后台处理支付?

Does flutter package flutter_stripe require backend to process payments?

我目前正尝试在我的 flutter 应用程序中实现条带支付,看起来 best/intended 的方法是希望 flutter_stripe。我已经通过 angular 等其他框架实现了条带支付,它通常需要一些后端来安全地处理支付,您可以使用诸如 firebase 云函数之类的东西来处理。但是,对于 flutter_stripe,他们对这个主题非常模糊,并且在寻找有关实现它的正确方法的教程和示例时,似乎大多数根本没有涵盖后端部分,所以我想知道它是否是要求?

在发布页面上,似乎没有关于要求的文档,所以感觉模棱两可:https://pub.dev/packages/flutter_stripe

flutter_stripe github 存储库包含一个示例用法,其中有一个服务器文件夹,其中包含我期望的 http 请求类型:https://github.com/flutter-stripe/flutter_stripe/tree/main/example

但它非常复杂,完全没有解释,也没有一般的文档。有没有人在他们的项目中成功地设置了这个包,如果可以,你能就后端要求提供一些建议吗?

谢谢!

几乎所有 Stripe 集成都需要后端部分,因为这是您执行大多数密钥操作的地方,例如创建 PaymentIntent 或 CheckoutSession。

您链接的 /server 目录确实创建了一个示例测试模式服务器供您使用,并且它具有用于创建 PaymentIntents like this here.

的端点

我没有使用过那个包,所以不能说,但一般来说,您的服务器部分将创建一个 PaymentIntent,您的 Flutter 应用程序将使用您的 Stripe 可发布密钥确认该 PaymentIntent。

seems to be correct, Stripe integrations require a backend according to their documentation about integrating payments. The example provided in the flutter_stripe repo 确实有一部分是关于在本地构建测试所需的服务器(在实际应用程序中,这需要在后端进行保护):

Set up env vars for the flutter app and a local backend.
    Get your test Stripe API keys
    cp lib/.env.example.dart lib/.env.dart and set your Stripe publishable key.
    cp server/.env.example server/.env and set the variable values in your newly created .env file.

您绝对可以使用 Firebase 实现后端。 Here 是使用 Firebase 作为后端实施示例集成的指南,其中包含更多充实的步骤和可用代码。它可以帮助您了解示例应用程序的一般实施过程。

其中一些来源不是 GCP 官方的,所以我不能保证它们的准确性。