我有两个脚本,一个用于计算购物车中商品的总数,另一个用于将变量传递给PayPal应用程序接口。有没有可能将这个变量从购物车脚本传递到PayPal脚本,而没有人能够从控制台更改它的值?否则,人们将能够确定他们愿意为这些商品支付多少钱,并将信息发送到PayPal。下面是我的代码:
购物车:
var total = 0;//对于购物车中的所有商品,将value传递给paypal-buttons.js以完成结账。
```javascript//根据数量计算购物车中物料的价值
函数addData(clicked_id,quantity) {
var价格= valuesclicked_id.price;
var数量=document.getElementById(数量).value;
var lineTotal =价格*数量;
total += lineTotal;
document.getElementById("total").innerHTML = total;
addRow(clicked_id,qty,lineTotal);
}
PayPal:
```javascriptpaypal.Buttons({风格:{
shape: 'rect',color: 'gold',layout: 'vertical',label: 'checkout',},
createOrder:函数(数据,操作){
return actions.order.create({ purchase_units: [{ amount: { value: total } }]});},
onApprove:函数(数据,操作){
return actions.order.capture().then(function(details) { alert('Thank you for your order ' + details.payer.name.given_name + ', your equipment is on its way!');});}
}).render('#paypal-button-container');
我想把'total‘的值从购物车发送到PayPal。我可能会尝试使用混淆作为部分解决方案,但我希望它比这更安全。
发布于 2020-01-16 02:52:06
防止恶意客户端更改的唯一方法是切换到服务器端集成,以便API调用来设置和捕获支付。以下是UI的演示模式:
https://developer.paypal.com/demo/checkout/#/pattern/server
以下是从您的服务器实现必要的v2/orders API调用的指南:
https://developer.paypal.com/docs/checkout/reference/server-integration/
https://stackoverflow.com/questions/59756763
复制相似问题