在纯前端(不使用自有后端服务器)实现完整的支付流程能实现吗?为什么不能真的“只有前端”呢?
从技术角度看,由于支付涉及敏感密钥管理和异步状态回调,传统的“全流程”(后端生成预支付订单、验签回调、处理业务逻辑)必须有服务器参与。
比如微信 Native 支付的核心环节:
1.商户私钥签名:生成 code_url 需要用你的商户私钥签名
2.回调验签:微信回调时需要你的 APIv3 密钥验签,处理订单状态。
3.业务逻辑:确认收款后更新库存、发货等。
但在我们也可以利用云函数 / Serverless (Vercel/Netlify Functions、Cloudflare Workers )或 聚合支付平台提供的托管页面来实现“纯前端视角”的支付闭环。
方案有很多,今天介绍一种最为方便的 Stripe Checkout + Nuxt Scripts/Payments/stripe
准备
- stripe.com https://dashboard.stripe.com/register 注册一个账号

- 创建一个价格表,添加产品,添加价格




支付设置-确认页面-不展示确认页面-将客户跳转到您的网站 这里可以输入你的成功跳转页面。来处理支付成功业务逻辑。
- 修改支付方式

这里支付方式很多种,国内外都可以介入,这里我选择的是微信支付和支付宝支付。不选择全开启,stripe 会根据用户所在地区自动选择最优支付方式。
值得一提的是,提现手续费是3.4% + $0.50
- 复制 Checkout代码

复制这里的id和key,后面会用到
- 完成
数据完全托管在 Stripe:改价格、加产品、调样式,都在 Dashboard 一键搞定,前端不用动代码!
代码

文档:
安装:
pnpm add -D @stripe/stripe-js
// vue |
展示
