【发布时间】:2021-11-24 03:19:32
【问题描述】:
这就是我被告知在我的电子商务网站上使用 paypal react 集成的方式,尽管我不确定它是否是最好的(我稍后会告诉你为什么)
useEffect(() =>{
window.paypal.Buttons({
createOrder: (data, actions, err) => {
return actions.order.create({
intent: "CAPTURE",
purchase_units: [
{
description: 'book',
amount:{
currency_code: 'USD',
value: 100
}
}
]
})
},
onApprove: async (data, action) =>{
completeOrder()
},
onError: err => console.log(err.message)
}).render(buttonsDiv.current)
// console.log(window.paypal)
}, [])
completeOrder() 函数的目的是在将completed 标签放入订单之前向后端发送请求以验证订单
所以我遇到的问题是completeOrder() 在付款完成后运行,根据我的经验,当用户付款时可能会发生服务器停机或维护等事情,这可能导致用户无偿支付,因为订单未完成
我正在寻找的第一个解决方案是根据服务器的响应取消付款。因此,如果服务器的响应是错误的,它将取消之前的付款。但由于我缺乏知识,不知道这怎么可能
【问题讨论】:
标签: reactjs paypal paypal-sandbox