【发布时间】:2020-02-05 01:26:20
【问题描述】:
我按照说明如何使用 SDK API 从 PayPal (https://developer.paypal.com/docs/checkout/integrate/) 添加智能支付按钮。一切正常,只是在付款执行后我无法重定向买家。
HTML页面中的JS代码如下:
paypal.Buttons({
createOrder: function (data, actions) {
return actions.order.create({
purchase_units: [{
amount: {
value: price
}
}]
});
},
onApprove: async function (data, actions) {
return actions.order.capture().then(function (details) {
alert('success!');
return fetch('/paypal-transaction-complete', {
method: 'post',
headers: {
'content-type': 'application/json'
},
body: JSON.stringify({
orderID: data.orderID,
})
});
});
}
}).render('#paypal-button-container');
在服务器端,我使用异步函数执行它并使用箭头函数等待承诺:
app.post('/paypal-transaction-complete', function (req, res) {
paypalRequestHandler.handleRequest(req, res)
.then(() => {
res.redirect('/'); // not working
}).catch(err => {
console.log(err);
res.sendStatus(500);
});
});
我想知道为什么它不重定向,我可以执行 console.log() 之类的操作,但它不会重定向买家。
【问题讨论】:
标签: node.js express paypal-sandbox paypal-rest-sdk