条纹错误:“密钥的实时模式与帐户模式不匹配(提示:不支持旧测试模式密钥。请使用沙箱。)”

问题描述 投票:0回答:1

我正在尝试通过用 NodeJS 编写的 AWS Lambda 函数测试计量计费。我从 Stripe 收到以下错误消息:

处理计量计费事件时出错:StripeAuthenticationError:密钥的 Livemode 与帐户模式不匹配(提示:不支持旧测试模式密钥。请使用沙箱。)

我对为什么会收到此错误感到非常困惑,因为我为此使用了测试模式密钥。我还整天通过 Stripe 测试东西,一切都工作正常。

我确信这与仪表事件对象具有的 livemode: BOOLEAN 属性有关,因此出于测试目的,我将其明确设置为 false:

        // Create the metered billing event with the v2 API (Custom Event Billing)
        const meterEvent = await stripe.v2.billing.meterEvents.create({
            event_name: 'product_creation', // You can use your custom event name
            payload: {
                value: 1,  // Increment by 1 product creation
                stripe_customer_id: stripeCustomerID  // Stripe customer ID
            },
            livemode: false  // IMPORTANT!!! --> make sure to set this to TRUE in the live mode.
            // this parameter must overtly be specified for TEST vs LIVE mode, for the meter event object.
        });

不,仍然出现此错误。

对于为什么会发生这种情况以及解决办法有什么想法吗?

谢谢!...

javascript node.js aws-lambda stripe-payments
1个回答
0
投票

我能够使用“尝试一堆随机的东西”方法奇迹般地解决了这个问题。修复结果是这样的......尽管 Stripe 文档说:

const meterEvent = await stripe.v2.billing.meterEvents.create({

我最终尝试了这样的方法:

const meterEvent = await stripe.billing.meterEvents.create({

这就是解决办法。

换句话说,Stripe 返回的错误消息与它在我的情况下不起作用的根本原因无关。

© www.soinside.com 2019 - 2024. All rights reserved.