问题描述
我想在用户使用 paypal api 进行购买后显示付款的详细信息。我意识到数据存储在 console.log(details)
中 如何查看另一个 html 页面中的 console.log(details) 并将其插入支付数据库中?这是我的 paypal api 代码:
<head>
<Meta charset="utf-8">
<title>My Orders</title>
<link rel=" stylesheet" href="~/styles/StyleSheet2.css">
<script src="https://www.paypal.com/sdk/js?client-id=AchXBKgrx7hxmn4m87StLCAuDD76_D4vX0vMqV2XAEyhhiHmO5bwB7O6uyZ3bW8KiyjVdnJdgW0aCh8e"></script>
<script>
paypal.Buttons({
createOrder: function(data,actions){
return actions.order.create({
purchase_units: [{
amount: {
value: '0.01'
}
}]
});
},onApprove: function (data,actions) {
return actions.order.capture().then(function (details) {
console.log(details)
window.location.replace("http://localhost:62941/Product/Success")
});
},onCancel: function (data) {
window.location.replace("http://localhost:62941/Product/Unsuccessfulpayment")
}
}).render('#paypal-button-container');
</script>
解决方法
如何在另一个html页面中查看console.log(details)并将其插入到支付数据库中?
不要。不要在客户端使用 actions.order.capture()
,然后将信息存储在数据库中。
如果要将信息存储在数据库中,请在服务器上进行捕获。
以下是要使用的审批流程:https://developer.paypal.com/demo/checkout/#/pattern/server
将此与服务器上的两条路由配对,一条用于“创建订单”,另一条用于“捕获订单”,documented here。