![](/img/trans.png)
[英]Can promises be used in JavaScript if I want to do something after the .then() fires
[英]I want to do something after payment is successful
我使用Stripe在代碼中創建了付款功能。 付款效果很好,可以接受付款,但是我想在創建付款后將一些數據引入數組,否則,如果無法返回帶有消息的頁面,則將這些數據引入數組。
我只是創建了函數,但不知道以后該怎么做。
exports.postPayment = async (req,res,next) => {
const loggedinUser = req.session.user._id;
const token = req.body.stripeToken;
const charge = stripe.charges.create({
amount:200,
currency:'usd',
description:'Negative Comment',
source:token
});
}
我應該創建一個then塊還是我應該如何檢查是否付款。 現在我處於測試模式,因此所有付款都將被接受。 請幫幫我,謝謝!
你不回來了 即在響應“ res”參數上調用返回方法之一。
注意!! 第一個片段撥打電話進行付款,並立即返回,即付款成功或失敗,此片段將不等待結果,第二個示例將利用承諾。
exports.postPayment = async (req,res,next) => {
const loggedinUser = req.session.user._id;
const token = req.body.stripeToken;
const charge = stripe.charges.create({
amount:200,
currency:'usd',
description:'Negative Comment',
source:token
});
return res.status(200).json({message: "It works!"});
}
不確定charges.create是否返回承諾,但是如果這樣做,我會這樣做:
exports.postPayment = async (req,res,next) => {
const loggedinUser = req.session.user._id;
const token = req.body.stripeToken;
try {
await const charge = stripe.charges.create({
amount:200,
currency:'usd',
description:'Negative Comment',
source:token
});
} catch (e) {
return res.status(500).json({message: "An error occured!", error: e});
}
return res.status(200).json({message: "It works!"});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.