【问题标题】:PayPal Checkout client-side: Can users change the order amount in JavaScript?PayPal Checkout 客户端:用户可以在 JavaScript 中更改订单金额吗?
【发布时间】:2020-11-09 20:53:12
【问题描述】:

我正在使用 PayPal Checkout 在客户端进行基本付款,我在询问它是否安全,因为我不希望用户更改金额。

此代码与文档中给出的相同。

<script>
  paypal.Buttons({
    createOrder: function(data, actions) {
      // This function sets up the details of the transaction, including the amount and line item details.
      return actions.order.create({
        purchase_units: [{
          amount: {
            value: '100'
          }
        }]
      });
    }
  }).render('#paypal-button-container');
</script>

【问题讨论】:

  • 是的,他们绝对可以。代码在他们的机器上执行。他们可以完全控制它。
  • 谢谢,@Ivar。抱歉,我知道这个问题很愚蠢
  • 别担心。你绝对不是第一个犯这个错误的人。永远不能盲目信任来自客户端的数据。把它放在脑后可以为你节省很多伤害。 :)

标签: javascript paypal paypal-sandbox


【解决方案1】:

对于仅限客户端的集成肯定是的

由于您正在寻找一种方法来防止这种情况发生,您需要一个服务器端集成来创建和捕获订单。

这是它的前端用户界面:https://developer.paypal.com/demo/checkout/#/pattern/server

您的服务器上需要两条对应的路由,一条用于“创建订单”,一条用于“获取订单”。以下是这些文档:https://developer.paypal.com/docs/business/checkout/server-side-api-calls/#server-side-api-calls

【讨论】:

  • 非常感谢您的解决方案!服务器端集成既简单又安全。
猜你喜欢
  • 2011-11-30
  • 1970-01-01
  • 2020-06-26
  • 2020-10-21
  • 1970-01-01
  • 1970-01-01
  • 2021-06-17
  • 2011-02-20
  • 2019-03-21
相关资源
最近更新 更多