You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Firebase JS SDK V9中实现Firebase Stripe扩展订阅功能

Firebase JS V9 适配Stripe扩展实现代码

你需要先完成Firebase初始化,确保已经通过getFirestore方法获取到db实例,且当前用户currentUser为已认证的有效对象。

依赖导入

import { getFirestore, addDoc, collection, onSnapshot } from "firebase/firestore";
// 替换下方yourFirebaseAppInstance为你调用initializeApp(配置)得到的Firebase应用实例
const db = getFirestore(yourFirebaseAppInstance);

核心逻辑实现

const checkoutSessionsColRef = collection(db, 'customers', currentUser.uid, 'checkout_sessions');
const docRef = await addDoc(checkoutSessionsColRef, {
  price: 'price_1GqIC8HYgolSBA35zoTTN2Zl',
  success_url: window.location.origin,
  cancel_url: window.location.origin,
});

// 监听扩展写入的CheckoutSession数据
onSnapshot(docRef, (snap) => {
  const { error, url } = snap.data();
  if (error) {
    // 可自定义错误提示逻辑,建议同时查看Firebase云函数日志排查问题
    alert(`发生错误:${error.message}`);
  }
  if (url) {
    // 跳转到Stripe支付页
    window.location.assign(url);
  }
});

以上代码和你提供的旧版本逻辑完全等效,仅替换为Firebase V9的模块化API写法,不需要修改其他配套配置即可正常运行。

内容的提问来源于stack exchange,提问作者Charles-olivier Demers

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 10:45:06