【问题标题】:Error: Received unknown parameter: source错误:收到未知参数:来源
【发布时间】:2019-10-19 17:40:47
【问题描述】:

我正在制作一个以 firetore 作为数据库的 react-redux 应用程序。现在,我想使用 firebase 云功能来处理条带支付。

这里是云函数“createSubscription”:

exports.createSubscription = functions.database
  .ref("/teachers/{userId}/pro-membership/token")
  .onWrite((event, context) => {
    const tokenId = event.after.val();
    const userId = context.params.userId;

    if (!tokenId) throw new Error("Token Missing");

    return admin
      .database()
      .ref(`teachers/${userId}`)
      .once("value")
      .then(snapshot => snapshot.val())
      .then(user => {
        console.log(user);

        return stripe.subscriptions.create({
          customer: user.customerId,
            source: tokenId,                 **// Here is the error occuring**
          items: [
            {
              plan: "pro-membership"
            }
          ]
        });
      })
      .then(sub => {
        admin
          .database()
          .ref(`teachers/${userId}/pro-membership`)
          .update({
            status: "active"
          });
      })
      .catch(err => {
        console.log("ERRor", err);
      });
  });

以下是来自云函数日志的错误信息:

【问题讨论】:

  • 这听起来像是一些与谷歌云无关的 Stripe 错误。
  • 我不知道为什么,但我已经编辑了大约 5 次,我将其更改为“firebase-cloud-functions”,但它不会从“google-cloud-functions”更改”。所以,我只是删除了这个标签。
  • source 不是stripe.subscriptions.create 请求的有效参数,请参阅stripe.com/docs/api/subscriptions/create --- 尝试先更新客户,添加令牌 (stripe.com/docs/api/customers/update),然后 创建订阅。
  • @duck 它的工作人员。谢谢!您可以将其发布为答案,我会接受。

标签: javascript firebase firebase-realtime-database stripe-payments


【解决方案1】:

source 不是stripe.subscriptions.create 请求的有效参数,请参阅https://stripe.com/docs/api/subscriptions/create

尝试先更新客户,添加令牌https://stripe.com/docs/api/customers/update,然后创建订阅!

【讨论】:

    猜你喜欢
    • 2019-09-20
    • 2019-11-02
    • 2019-09-10
    • 1970-01-01
    • 2013-01-30
    • 1970-01-01
    • 2020-02-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多