当前位置: 首页 > 知识库问答 >
问题:

贝宝智能按钮价格篡改

罗智志
2023-03-14

在这里遵循教程之后:

https://developer.paypal.com/docs/checkout/

我设法用他们的智能按钮轻松设置了paypal结账过程。然而,我看到在他们的实现中,价格要么是硬编码的,要么是通过JS传递的。

据我所知,一些恶意黑客可以很容易地更改我的代码来修改价格。

贝宝真的阻止了吗?这:

https://developer.paypal.com/docs/checkout/#how-the-buttons-work

没有告诉我用户是否可以篡改价格。

我还检查了这个:

https://developer.paypal.com/docs/paypal-payments-standard/integration-guide/limitations/

我真的不知道这是不是过时了,或者是另一种结账方式。

所以,我的问题是Paypal如何用javascript制作那些智能按钮客户端?他们如何预防上述情况?

此外,我是否应该使用paypal IPN来防止这种情况,正如这里所建议的那样?我宁愿让这成为一个最简单的集成,而为这个非常简单的案例建立一个新的集成,对我来说似乎是一个过火的举动。


共有1个答案

斜高翰
2023-03-14

显然我把事情搞得太复杂了。Fireship简化了我的困惑,所以这很好。

基本工作流程如下所示:

  • 客户填写结账表格或支付与贝宝按钮允许的任何方式。
  • 将使用订单id和其他详细信息触发onApven回调。
  • 只需向您的restful服务发出一个适当安全的api调用,验证价格和订单ID就可以了

因此,无论恶意黑客是否试图篡改价格,服务器都将验证价格和订单id。

对于像我这样以前困惑的人,在您的服务器上使用此来验证:

https://developer.paypal.com/docs/checkout/reference/server-integration/get-transaction/

 类似资料:
  • [React/NodeJS]我在寻找有关此主题的适当文档方面遇到了巨大的困难——我希望在我的网站上实现PayPal,但限制条件是,在我们的离线服务完成后,客户将被收取费用(具有可变成本,但考虑到某种解决方案,如果我可以“授权”等于我们最大成本的金额,我们将是a-OK).我的初步研究表明,PayPal订单至少在一定程度上满足了这一需求,即在我们授权收费之前,订单和资金不会被搁置,最好是在离线服务完成

  • 问题内容: 所以我试图让Paypal按钮显示在我的应用程序上,但无法正常工作。我基于这个jsfiddle。 https://jsfiddle.net/rbacekkb/ 我试图放入我的应用程序,但该按钮没有显示在我想要的页面上。我不知道我做错了什么。 试图使其显示在当前页面上以进行测试。 index.html 问题答案: 似乎直到今天还没有人开发一个react的paypal按钮(对于react-n

  • 问题内容: 我正在使用PHP和Mysql设计一个订购站点。在最后阶段,将为用户提供Paypal按钮,以支付他所下的订单。因此,项目名称,值是变量。这些值是变量,我不能使用Paypal的加密按钮。在将其显示给用户之前,我必须使用未加密的按钮或对其进行加密。 我出于安全原因希望对其进行加密。我想知道如何在服务器上执行此操作。 问题答案: 也许您可以尝试将这些变量放入具有唯一ID的临时表中。然后使用该I

  • 谢谢你的预付费。

  • 是否可以使用新的paypal结账(请参阅:https://developer.paypal.com/docs/checkout/)使用自定义付款按钮(不带智能付款按钮),如以下实现屏幕截图所示? 有人可以告诉我一些指南或代码,如何做新的贝宝结账没有智能支付按钮? 原因:我们不想用paypal按钮破坏我们的设计,但我们想为用户提供相同的按钮,用于他选择的任何付款方式。

  • 收藏宝贝 /** * 收藏宝贝 * * @memberOf Tida * @module social * @name itemFavor * @function * * @param {object} options 入参 * @param {number} options.shopId 店铺ID * @param {function} callback 回调函数 *