对于了解 JavaScript 的人来说,这将是一个简单的 JavaScript 答案,但我不太擅长 JavaScript。
我正在使用 Stripe + Parse。在这个函数中我需要: 1. 创建客户 2. 向客户收费
我的 Promise 语法有问题。
仅当两个 Stripe 调用都返回成功时,我才需要成功
。但是,当任一返回错误时,我需要调用 error
。考虑到这种链式语法,我不知道将它们放在哪里。
Parse.Cloud.define("chargeToken",function(request,response)
{
Stripe.Customers.create({
card: request.params.card,
description: request.params.description
}).then(function(customer) {
return Stripe.Charges.create({
amount: request.params.amount,
currency: request.params.currency,
customer: customer.id,
success:function(results)
{
response.success(results);
},
error:function(error)
{
response.error("Error:" +error);
}
});
});
});
此代码取自 Stripe 网站上的示例,但是,没有适合我需要的示例,这是我想出的最好的示例。
最佳答案
您应该能够将成功和错误处理代码编写为链中的最后一个处理程序。例如:
Stripe.Customers.create({
card: request.params.card,
description: request.params.description
}).then(function(customer) {
return Stripe.Charges.create({
amount: request.params.amount,
currency: request.params.currency,
customer customer.id
});
}).done(function(results) {
response.success(results);
}, function(err) {
response.error('Error:' + err);
});
关于javascript - Stripe + Parse - 无法弄清楚 Javascript promise ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27697237/