我正在尝试在Stripe中创建新客户。我很成功,但对他们的文档如何调用函数风格感到困惑。
我似乎找不到他们官方文档中的任何信息。 https://stripe.com/docs/api/customers/create?lang=node
例如:
stripe.customers.create({
description: 'Customer for jenny.rosen@example.com',
source: "tok_visa" // obtained with Stripe.js
}, function(err, customer) {
// asynchronously called
});
我假设它类似于“ .then((err,customer)=> {}',但似乎无法使用具有这种语法的函数调用。
任何解释都会有帮助!
答案 0 :(得分:3)
您所知道的是Promise,并且它们是当今进行异步的首选方式。 Stripe的API使用的是回调(也称为errback)样式,该样式早于Promises。
类似于
.then(customer => ...).catch(err => ...)
但是,Stripe的Node库也返回promise,因此您可以将示例转换为:
stripe.customers.create({
description: 'Customer for jenny.rosen@example.com',
source: "tok_visa" // obtained with Stripe.js
})
.then(customer => ...)
.catch(err => ...);
答案 1 :(得分:2)
逗号的含义与任何其他函数调用中的含义相同。它分隔参数。
第二个参数恰好是一个函数。
var first_argument = {
description: 'Customer for jenny.rosen@example.com',
source: "tok_visa" // obtained with Stripe.js
};
var second_argument = function(err, customer) {
// asynchronously called
};
stripe.customers.create(first_argument, second_argument);