我有Stripe的问题我没有在回调中得到任何东西......
这是我的服务器端:
Stripe.charges.create(
{
amount: totalCostUSD,
currency: 'usd',
source: req.body.stripeToken,
description: 'Example Charge',
metadata: {'order_id': '6735'}
}, function (err, charge) {
if (err && err.type === "StripeCardError") {
return res
.status(status.BAD_REQUEST)
.json({error: err.toString()});
}
if (err) {
console.log(err);
return res
.status(status.INTERNAL_SERVER_ERROR)
.json({error: err.toString()});
}
req.user.data.cart = [];
req.user.save(function () {
return res.json({id: charge.id});
});
});
从我的客户端,我尝试发送这样的请求:
superagent
.post(url)
.send({
stripeToken: {
number: '4242424242424242',
exp_month: 12,
exp_year: 2017,
cvc: '123'
}
})
.end(function (error, res) {
console.log(error);
console.log(res.text);
});
我尝试在服务器和客户端登录我的回调,但它没有返回任何内容......任何人都知道什么是问题?
答案 0 :(得分:1)
你能够制作任何日志吗?我会尝试抛出一些登录信息,以确切了解可能出现的问题。
console.log("Ready to create a charge!");
Stripe.charges.create({
amount: totalCostUSD,
currency: 'usd',
source: req.body.stripeToken,
description: 'Example Charge',
metadata: {'order_id': '6735'}
}, function (err, charge) {
console.log("Entered ChargeCreate Callback Function.");
if (err && err.type === "StripeCardError") {
console.log("Encountered Stripe error.");
return res.status(status.BAD_REQUEST).json({
error: err.toString()
});
}
if (err) {
console.log("Encountered unknown error.");
return res.status(status.INTERNAL_SERVER_ERROR).json({
error: err.toString()
});
}
req.user.data.cart = [];
req.user.save(function () {
console.log("Entered UserSave Callback Function.");
return res.json({id: charge.id});
});
}
);
如果您没有看到任何日志,您是否可能无法从Node.js服务器查看stdOut?你在本地运行吗?
答案 1 :(得分:0)
我发现问题是什么,我的单元测试仅限于在2000毫秒内执行,之后失败......
但是为了引用Strip api需要更多的时间来执行......
所以为了延长执行期,我把它放在测试中:
it("Can chackout", function (done) {
this.timeout(15000);
setTimeout(done, 15000);