使用 Supabase Functions 的 Flutter Stripe 支付

这是一个Flutter示例应用程序,展示了如何使用Supabase Functions为经过身份验证的客户处理付款。

Demo gif

设置

创建新的Supabase项目

设置环境变量

Supabase Functions

Supabase Functions使用TypeScript编写,通过Deno运行,并使用Supabase CLI部署。请下载最新版本的Supabase CLI,或者如果您已安装,请升级它。

  • 生成访问令牌并登录CLI
  • 链接您的项目
    • 在您的项目根目录下运行supabase link --ref your-project-ref

本地开发

  • 运行supabase start (确保您的Docker守护程序正在运行)。
  • 运行supabase functions serve --env-file .env payment-sheet
    • 注意:无需指定SUPABASE_URLSUPABASE_ANON_KEY,因为它们将从链接的项目中自动为您提供。
  • 在另一个终端窗口中运行Flutter应用程序
    • cd app
    • flutter run
  • 制造一些测试资金 ???
  • 停止本地开发
    • 关闭“supabase functions serve watcher” (Ctrl + C)
    • 运行supabase stop以停止Docker容器。

部署

  • 设置您的秘密
    • 运行supabase secrets set --from-stdin < .env以从您的.env文件中设置环境变量。
    • 您可以运行supabase secrets list来检查是否成功,并查看默认设置的其他环境变量。
  • 部署函数
    • 在您的项目根目录下运行supabase functions deploy payment-sheet

?⚡️?

\o/ 就是这样,您现在可以通过supabase-jssupabase-dart客户端库调用您的Supabase函数。 (更多客户端库即将推出。请查看supabase-community组织了解详情)。

有关Supabase Functions的更多信息,请参阅文档示例

GitHub

查看 Github