【问题标题】:Stripe node.js - StripeAuthenticationError条纹 node.js - StripeAuthenticationError
【发布时间】:2017-12-05 05:49:38
【问题描述】:

我正在使用 nodejs 和 reactjs 在 Web 应用程序中实现条带支付。

如果我在 localhostm 上测试我的付款,一切正常!但是,如果我在http://beta.mywebsite.com 上推送相同的代码,我会在服务器端收到此错误。客户端一切似乎都有效..

留言:

您没有提供 API 密钥,但您确实将 Authorization 标头设置为“null”。使用 Bearer auth,您的 Authorization 标头应该类似于“Authorization: Bearer YOUR_SECRET_KEY”。详情请见https://stripe.com/docs/api#authentication,或者我们可以通过https://support.stripe.com/提供帮助


服务器端

const stripeClient = stripe('sk_test*************')
stripeClient.setApiVersion('2017-06-05')

const Stripe = {
  pay (payload) {
    return new Promise((resolve, reject) => {
      if (!payload || !isObject(payload)) throw new BadCreateRequest('Stripe: pay. Unexpected parameters.')

      let { user, total, token, cartId } = payload

      stripeClient.customers.create({
        email: token.email,
        source: token.id
      })
      .then(customer => {
        return stripeClient.charges.create({
          amount: total * 100,
          currency: 'eur',
          customer: customer.id,
          description: `Paid from ${user.email} (${user.id})`
        })
      })
      .then(charge => {
        if (!charge) throw new BadCreateRequest()

        let closeCartData = {
          balanceTransaction: charge.balance_transaction,
          stripeId: charge.id,
          refundUrl: charge.refunds.url
        }

        return Cart.setAsPayed(cartId, closeCartData)
      })
      .then(closedCart => resolve(closedCart))
      .catch(reject)
    })
  }
}

【问题讨论】:

  • 你为什么不尝试设置api密钥?
  • 我试过写stripeClient.setApiKey('sk_test*************') 但不行

标签: node.js reactjs stripe-payments


【解决方案1】:

我遇到了同样的错误信息。

我试图做的是使用来自process.env 变量的密钥,但它不起作用。

const Stripe = require('stripe');
const stripe = Stripe('sk_test_...');

这对我有用。

【讨论】:

  • 这对我也有用。谢谢!
【解决方案2】:

我也遇到了同样的问题,我只是换了浏览器就可以了!!! (不要使用google chrome或brave,使用firefox或其他浏览器)

【讨论】:

  • 欢迎来到 SO!当我们对相关语法的更改或某些相关软件版本的弃用有新的看法时,我们通常会回答老问题。这种简短的答案通常以 cmets 的形式提交。如果您没有足够的声誉来发表评论,请等到您发表评论。
  • 此外,这甚至不能回答问题,因为“更改浏览器”不是一个可行的解决方案(此外,这是一个服务器端问题,所以......???)
【解决方案3】:

请使用const stripeClient = require('stripe')('sk_test*************')

【讨论】:

  • 这很好,谢谢伙计
猜你喜欢
  • 2020-08-16
  • 1970-01-01
  • 2022-08-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多