【发布时间】: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